briar issueshttps://code.briarproject.org/briar/briar/-/issues2022-01-19T10:36:04Zhttps://code.briarproject.org/briar/briar/-/issues/2254QR screen hangs if user leave Briar and go to permission manager and denies l...2022-01-19T10:36:04ZIvanaQR screen hangs if user leave Briar and go to permission manager and denies location permission during the creation of nearby contactReproducible on devices: Pixel 2 API 30, Samsung A01 Core API 29, Motorola E2 API 23
It does not happen on HTC One M9 API 24
## Steps to execute
- Verify that Briar debug has location and camera permissions granted in the device setting...Reproducible on devices: Pixel 2 API 30, Samsung A01 Core API 29, Motorola E2 API 23
It does not happen on HTC One M9 API 24
## Steps to execute
- Verify that Briar debug has location and camera permissions granted in the device settings
- Go to 'add nearby contact'
- Follow instructions, and when the QR code is displayed, go to the device settings and deny the locaiton permission to Briar debug
- Return to Briar debug
- re-login when asked
## expected results
- the QR screen that was showing before, displays again
## actual results
- the QR screen hangs. See attached.![device-2022-01-18-141734](/uploads/bbc47c7fbbd01b50beba5f971278fa6c/device-2022-01-18-141734.mp4)[QR_screen_hangs_on_Pixel2.txt](/uploads/48d5e18d8e704108f0fbf9869ce77ad9/QR_screen_hangs_on_Pixel2.txt)https://code.briarproject.org/briar/briar/-/issues/2249Briar sends profile picture updates to clients that have the image attachment...2022-01-07T19:24:51ZSebastianBriar sends profile picture updates to clients that have the image attachments feature flag disabledThe desktop project has image attachments and profile pictures disabled
```
override fun shouldEnableImageAttachments() = false
override fun shouldEnableProfilePictures() = false
```
still briar 1.4.3 is sending avatar updates to it, I b...The desktop project has image attachments and profile pictures disabled
```
override fun shouldEnableImageAttachments() = false
override fun shouldEnableProfilePictures() = false
```
still briar 1.4.3 is sending avatar updates to it, I believe this is a bughttps://code.briarproject.org/briar/briar/-/issues/2248Add feature flag for disabling introduction client in core2022-01-06T14:46:18ZSebastianAdd feature flag for disabling introduction client in coreRelated to !1572, requires #1214 to be implemented in concertRelated to !1572, requires #1214 to be implemented in concerthttps://code.briarproject.org/briar/briar/-/issues/2247Always connect to the Internet while Briar is put to foreground2022-11-02T18:30:20ZNorbert 80Always connect to the Internet while Briar is put to foregroundHello all,
Users who use the setting "Connect to the Internet only when charging" have to change this setting every time they want to bring Briar online in the meantime without the charger connected. This is very annoying and inconvenie...Hello all,
Users who use the setting "Connect to the Internet only when charging" have to change this setting every time they want to bring Briar online in the meantime without the charger connected. This is very annoying and inconvenient. In addition, it generally seems senseless to have the app in the foreground while it is offline.
For these reasons, I suggest the following behaviour of Briar while "Connect to the Internet only when charging" is activated:
1. When Briar is brought to the foreground, it should automatically switch to online.
2. When Briar is brought back to the background, it should maintain the internet connection for another 3 minutes. After the 3 minutes, Briar will automatically go offline. This 3 minute delay is to avoid excessive online/offline intervals.
(This is needed for example when the user wants to share texts from another app).https://code.briarproject.org/briar/briar/-/issues/2244Reduce bandwidth used by polling2021-12-13T14:23:36ZakwizgranReduce bandwidth used by pollingPolling for connections to contacts via Tor uses a significant amount of bandwidth. We could save bandwidth by polling unreachable contacts less often, or by polling less often (perhaps not at all) if we're confident that contacts can co...Polling for connections to contacts via Tor uses a significant amount of bandwidth. We could save bandwidth by polling unreachable contacts less often, or by polling less often (perhaps not at all) if we're confident that contacts can connect to us when they come online (ie if our hidden service is reachable).
For short-range transports, polling contacts in a batch may use less battery than polling them at contact-specific intervals. It may be possible to meet the needs of Tor and short-range transports by polling in batches, but not including unreachable contacts in every batch.https://code.briarproject.org/briar/briar/-/issues/2238Upgrade h22023-09-07T14:13:30ZSebastianUpgrade h2While working on https://code.briarproject.org/briar/briar-mailbox/-/merge_requests/46 we discovered some things relevant to upgrading H2 in briarWhile working on https://code.briarproject.org/briar/briar-mailbox/-/merge_requests/46 we discovered some things relevant to upgrading H2 in briarhttps://code.briarproject.org/briar/briar/-/issues/2237Pending contact list doesn't show "No internet connection" if list contains f...2021-12-01T10:43:02ZakwizgranPending contact list doesn't show "No internet connection" if list contains failed pending contactsIf the pending contact list contains a mixture of failed and not-failed pending contacts, the "No internet connection" snackbar isn't shown when the device is offline. If the failed pending contacts are removed, leaving only not-failed o...If the pending contact list contains a mixture of failed and not-failed pending contacts, the "No internet connection" snackbar isn't shown when the device is offline. If the failed pending contacts are removed, leaving only not-failed ones, the snackbar appears.https://code.briarproject.org/briar/briar/-/issues/2236Contact list doesn't scroll to top after adding contact2021-11-30T12:19:21ZakwizgranContact list doesn't scroll to top after adding contactA user reported that the contact list doesn't scroll to the top after adding a contact, so the new contact isn't visible. This makes it unclear whether the contact was added or not.
Similarly, the list doesn't scroll to the top after re...A user reported that the contact list doesn't scroll to the top after adding a contact, so the new contact isn't visible. This makes it unclear whether the contact was added or not.
Similarly, the list doesn't scroll to the top after returning from a private conversation. If messages have been sent or received in the conversation, moving it to the top of the list, then it may no longer be visible when returning to the contact list.https://code.briarproject.org/briar/briar/-/issues/2235"Contact deleted" toast is not shown2021-11-30T12:16:54Zakwizgran"Contact deleted" toast is not shownA user reported that the "contact deleted" toast was not shown after deleting a contact. (The pending contacts snackbar was visible, in case that's relevant.)A user reported that the "contact deleted" toast was not shown after deleting a contact. (The pending contacts snackbar was visible, in case that's relevant.)https://code.briarproject.org/briar/briar/-/issues/2227some RSS feeds are not detected2022-02-28T22:03:08ZJeremie Larivieresome RSS feeds are not detectedBriar gives an error when importing Some feeds, specifically several on Substack, e.g. https://edwardsnowden.substack.com/ or https://cryptobeat.substack.com/.
Substack seems to have /feed , /feed.xml , /feed.rss , and none of those wo...Briar gives an error when importing Some feeds, specifically several on Substack, e.g. https://edwardsnowden.substack.com/ or https://cryptobeat.substack.com/.
Substack seems to have /feed , /feed.xml , /feed.rss , and none of those work for me in Briar. Substack's support said I should reach out to Briar since the substack feeds work in other readers they tried.
I haven't had an error on other feeds I've tried, it imports both RSS & Atom from Tails' blog (https://tails.boum.org/news/index.en.rss or https://tails.boum.org/news/index.en.atom)
It also works with Signal & FlowCrypt's blogs (https://signal.org/blog/rss.xml and https://flowcrypt.com/blog/feed.xml).https://code.briarproject.org/briar/briar/-/issues/2224briar doesn't build with JDK 172022-06-20T18:12:14ZSebastianbriar doesn't build with JDK 17Running the tests reveals a few problemsRunning the tests reveals a few problemshttps://code.briarproject.org/briar/briar/-/issues/2223Improve cleanup after lifecycle startup errors2021-11-17T15:50:26ZakwizgranImprove cleanup after lifecycle startup errorsLifecycleManager#startServices() can return various error values. Currently the Android app doesn't call stopServices() unless startup succeeded, whereas the headless app calls stopServices() regardless.
If the system clock is unreasona...LifecycleManager#startServices() can return various error values. Currently the Android app doesn't call stopServices() unless startup succeeded, whereas the headless app calls stopServices() regardless.
If the system clock is unreasonable, LifecycleManagerImpl#startServices() doesn't release the startStopSemaphore before returning, so stopServices() will block indefinitely - but the semaphore is released in the case of other errors.
We should tidy all of this up so that either stopServices() doesn't need to be called if startup fails, or so that it can be called safely and without blocking indefinitely, and so that services and the DB have a clear contract for whether they will be started and/or stopped if an error happens.
Related to #2222.https://code.briarproject.org/briar/briar/-/issues/2220GroupCount contains wrong timestamp for test data2021-12-03T12:17:34ZMikolai GütschowGroupCount contains wrong timestamp for test dataRoot cause of https://code.briarproject.org/briar/briar-desktop/-/issues/103
The `conversationManager.getGroupCount()` always returns a group count with the current time as timestamp, even if the newest message is generated as being sen...Root cause of https://code.briarproject.org/briar/briar-desktop/-/issues/103
The `conversationManager.getGroupCount()` always returns a group count with the current time as timestamp, even if the newest message is generated as being sent/received in the past.
This can be reproduced by changing line 344 of `TestDataCreatorImpl.java` as follows:
```diff
- long timestamp = clock.currentTimeMillis() - num * 60 * 1000;
+ long timestamp = clock.currentTimeMillis() - num * 60 * 1000 - 24 * 60 * 60 * 1000;
```
Starting the Android app and creating test data results in the following screens: The contact list shows "now" despite the last message being sent/received exactly one day ago.
![Screenshot_1636666735](/uploads/081efea134b2e86d257d8c9191cd56ef/Screenshot_1636666735.png)
![Screenshot_1636666744](/uploads/66d5406e095842458c2c014e15585ad9/Screenshot_1636666744.png)https://code.briarproject.org/briar/briar/-/issues/2219OverlappingFileLockException and OOM when loading large forum2021-11-11T16:08:35ZakwizgranOverlappingFileLockException and OOM when loading large forumThis OOM looks similar to #1607, and even includes an RSS fetch in the log, but it also has some unusual exceptions in the log that deserve further investigation.
* Android version: 8.1.0
* Phone model: Samsung SM-T835 (gts4lltexx)
* Br...This OOM looks similar to #1607, and even includes an RSS fetch in the log, but it also has some unusual exceptions in the log that deserve further investigation.
* Android version: 8.1.0
* Phone model: Samsung SM-T835 (gts4lltexx)
* Briar version: 1.3.6 (445ef08)
* User feedback: "Crash after a long loading time, large forum."
Stacktrace:
```
Failed to allocate a 80 byte allocation with 32 free bytes and 32B until OOM, max allowed footprint 268435456, growth limit 268435456
java.lang.OutOfMemoryError: Failed to allocate a 80 byte allocation with 32 free bytes and 32B until OOM, max allowed footprint 268435456, growth limit 268435456
at java.util.HashMap.resize(HashMap.java:703)
at java.util.HashMap.putVal(HashMap.java:628)
at java.util.HashMap.put(HashMap.java:611)
at java.util.HashSet.add(HashSet.java:219)
at androidx.constraintlayout.solver.widgets.ConstraintAnchor.connect(ConstraintAnchor.java:227)
at androidx.constraintlayout.solver.widgets.ConstraintWidget.immediateConnect(ConstraintWidget.java:1621)
at androidx.constraintlayout.widget.ConstraintLayout.applyConstraintsFromLayoutParams(ConstraintLayout.java:1349)
at androidx.constraintlayout.widget.ConstraintLayout.setChildrenConstraints(ConstraintLayout.java:1253)
at androidx.constraintlayout.widget.ConstraintLayout.updateHierarchy(ConstraintLayout.java:1149)
at androidx.constraintlayout.widget.ConstraintLayout.onMeasure(ConstraintLayout.java:1685)
at android.view.View.measure(View.java:23393)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6966)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1514)
at android.widget.LinearLayout.measureHorizontal(LinearLayout.java:1167)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:687)
at android.view.View.measure(View.java:23393)
at androidx.recyclerview.widget.RecyclerView$LayoutManager.measureChildWithMargins(RecyclerView.java:9384)
at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1653)
at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1587)
at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:665)
at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4134)
at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3851)
at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
at android.view.View.layout(View.java:20950)
at android.view.ViewGroup.layout(ViewGroup.java:6439)
at androidx.constraintlayout.widget.ConstraintLayout.onLayout(ConstraintLayout.java:1855)
at android.view.View.layout(View.java:20950)
at android.view.ViewGroup.layout(ViewGroup.java:6439)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
at android.view.View.layout(View.java:20950)
at android.view.ViewGroup.layout(ViewGroup.java:6439)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
at android.view.View.layout(View.java:20950)
at android.view.ViewGroup.layout(ViewGroup.java:6439)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1791)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1635)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1544)
at android.view.View.layout(View.java:20950)
at android.view.ViewGroup.layout(ViewGroup.java:6439)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
at android.view.View.layout(View.java:20950)
at android.view.ViewGroup.layout(ViewGroup.java:6439)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
at android.view.View.layout(View.java:20950)
at android.view.ViewGroup.layout(ViewGroup.java:6439)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
at android.view.View.layout(View.java:20950)
at android.view.ViewGroup.layout(ViewGroup.java:6439)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
at android.view.View.layout(View.java:20950)
at android.view.ViewGroup.layout(ViewGroup.java:6439)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1791)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1635)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1544)
at android.view.View.layout(View.java:20950)
at android.view.ViewGroup.layout(ViewGroup.java:6439)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:323)
at android.widget.FrameLayout.onLayout(FrameLayout.java:261)
at com.android.internal.policy.DecorView.onLayout(DecorView.java:961)
at android.view.View.layout(View.java:20950)
at android.view.ViewGroup.layout(ViewGroup.java:6439)
at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:3027)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2714)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1843)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7978)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:911)
at android.view.Choreographer.doCallbacks(Choreographer.java:723)
at android.view.Choreographer.doFrame(Choreographer.java:658)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:897)
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:7002)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:441)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1408)
```
Log:
```
11-07 15:47:30.508 I/TcpPlugin: 192.168.43.1 is not connectable from 192.168.178.22
11-07 15:47:30.508 I/TcpPlugin: 192.168.49.1 is not connectable from 192.168.178.22
11-07 15:47:30.508 I/TcpPlugin: Connecting to fe[scrubbed]21
11-07 15:47:30.508 I/TcpPlugin: Could not connect to fe[scrubbed]0d
11-07 15:47:30.508 I/TcpPlugin: Could not connect to fe[scrubbed]21
11-07 15:47:30.508 I/TcpPlugin: Connecting to fe[scrubbed]12
11-07 15:47:30.508 I/TcpPlugin: Could not connect to fe[scrubbed]12
11-07 15:47:30.508 I/TcpPlugin: Connecting to fe[scrubbed]58
11-07 15:47:30.508 I/TcpPlugin: Connecting to fe[scrubbed]e5
11-07 15:47:30.509 I/TcpPlugin: Could not connect to fe[scrubbed]e5
11-07 15:47:30.509 I/TcpPlugin: Could not connect to fe[scrubbed]58
11-07 15:47:30.509 I/TcpPlugin: 192.168.0.101 is not connectable from 192.168.178.22
11-07 15:47:30.509 I/TcpPlugin: 192.168.43.1 is not connectable from 192.168.178.22
11-07 15:47:30.509 I/TcpPlugin: 192.168.49.1 is not connectable from 192.168.178.22
11-07 15:47:30.510 I/TcpPlugin: Connecting to fe[scrubbed]e5
11-07 15:47:30.510 I/TcpPlugin: Could not connect to fe[scrubbed]e5
11-07 15:47:32.257 I/BaseActivity: Destroying SplashScreenActivity
11-07 15:47:34.262 I/DuplexOutgoingSession: Generated offer: false
11-07 15:47:35.154 I/DuplexOutgoingSession: Generated offer: false
11-07 15:47:36.030 I/BaseActivity: Pausing NavDrawerActivity
11-07 15:47:36.041 I/BaseActivity: Creating ForumActivity
11-07 15:47:36.074 I/BaseActivity: Starting ForumActivity
11-07 15:47:36.074 I/BaseActivity: Resuming ForumActivity
11-07 15:47:37.804 I/BaseActivity: Stopping NavDrawerActivity
11-07 15:47:44.582 I/DuplexOutgoingSession: Sending keepalive
11-07 15:47:48.196 I/DuplexOutgoingSession: Sending keepalive
11-07 15:47:58.961 I/RenewableWakeLock: Renewing wake lock org.briarproject.briar.android
11-07 15:48:00.596 I/AndroidTaskScheduler: Alarm
11-07 15:48:00.602 I/AndroidTaskScheduler: Running 0 due tasks
11-07 15:48:20.911 I/DuplexOutgoingSession: Sending keepalive
11-07 15:48:20.911 I/DuplexOutgoingSession: Sending keepalive
11-07 15:48:22.088 I/DuplexOutgoingSession: Generated offer: false
11-07 15:48:22.994 I/DuplexOutgoingSession: Generated offer: false
11-07 15:48:23.883 I/ThreadListViewModel: Loaded last top visible message id MessageId(0F16B9EDD7FC27DB06ED03075CF923C58EE3D1A9948708B25F7FED7FDAAEF91D)
11-07 15:48:24.460 I/AndroidTaskScheduler: Running 1 due tasks
11-07 15:48:24.799 I/AndroidTaskScheduler: Task is 0 ms overdue
11-07 15:48:24.805 I/AndroidLanTcpPlugin: Connected to wifi
11-07 15:48:24.816 I/TorPlugin: Online: true, wifi: true, IPv6 only: false
11-07 15:48:24.816 I/TorPlugin: Country code: DE
11-07 15:48:24.816 I/TorPlugin: Charging: true
11-07 15:48:24.816 I/TorPlugin: Enabling network
11-07 15:48:24.816 I/TorPlugin: Not using bridges
11-07 15:48:24.816 I/TorPlugin: Enabling connection padding
11-07 15:48:24.820 W/PluginManagerImpl: org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:612)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getLocalProperties(TransportPropertyManagerImpl.java:217)
at org.briarproject.bramble.plugin.PluginManagerImpl$Callback.getLocalProperties(PluginManagerImpl.java:311)
at org.briarproject.bramble.plugin.tcp.LanTcpPlugin.getLocalSocketAddresses(LanTcpPlugin.java:133)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.bind(TcpPlugin.java:162)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0(TcpPlugin.java:154)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0$TcpPlugin(Unknown Source:0)
at org.briarproject.bramble.plugin.tcp.-$$Lambda$TcpPlugin$IG7OujafuxmUKGD9Z35IgV8DTwo.run(Unknown Source:2)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0(PoliteExecutor.java:57)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0$PoliteExecutor(Unknown Source:0)
at org.briarproject.bramble.-$$Lambda$PoliteExecutor$wSvuPL6t_HUoaaqCVexrhJX_RSg.run(Unknown Source:6)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.h2.mvstore.db.MVTableEngine$Store.convertIllegalStateException(MVTableEngine.java:187)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:167)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getLocalProperties(TransportPropertyManagerImpl.java:217)
at org.briarproject.bramble.plugin.PluginManagerImpl$Callback.getLocalProperties(PluginManagerImpl.java:311)
at org.briarproject.bramble.plugin.tcp.LanTcpPlugin.getLocalSocketAddresses(LanTcpPlugin.java:133)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.bind(TcpPlugin.java:162)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0(TcpPlugin.java:154)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0$TcpPlugin(Unknown Source:0)
at org.briarproject.bramble.plugin.tcp.-$$Lambda$TcpPlugin$IG7OujafuxmUKGD9Z35IgV8DTwo.run(Unknown Source:2)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0(PoliteExecutor.java:57)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0$PoliteExecutor(Unknown Source:0)
at org.briarproject.bramble.-$$Lambda$PoliteExecutor$wSvuPL6t_HUoaaqCVexrhJX_RSg.run(Unknown Source:6)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.IllegalStateException: The file is locked: split:30:/data/data/org.briarproject.briar.android/app_db/db.mv.db [1.4.192/7]
at org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:773)
at org.h2.mvstore.FileStore.open(FileStore.java:167)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getLocalProperties(TransportPropertyManagerImpl.java:217)
at org.briarproject.bramble.plugin.PluginManagerImpl$Callback.getLocalProperties(PluginManagerImpl.java:311)
at org.briarproject.bramble.plugin.tcp.LanTcpPlugin.getLocalSocketAddresses(LanTcpPlugin.java:133)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.bind(TcpPlugin.java:162)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0(TcpPlugin.java:154)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0$TcpPlugin(Unknown Source:0)
at org.briarproject.bramble.plugin.tcp.-$$Lambda$TcpPlugin$IG7OujafuxmUKGD9Z35IgV8DTwo.run(Unknown Source:2)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0(PoliteExecutor.java:57)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0$PoliteExecutor(Unknown Source:0)
at org.briarproject.bramble.-$$Lambda$PoliteExecutor$wSvuPL6t_HUoaaqCVexrhJX_RSg.run(Unknown Source:6)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.nio.channels.OverlappingFileLockException
at sun.nio.ch.SharedFileLockTable.checkList(FileLockTable.java:255)
at sun.nio.ch.SharedFileLockTable.add(FileLockTable.java:152)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:1125)
at org.h2.store.fs.FileDisk.tryLock(FilePathDisk.java:447)
at org.h2.store.fs.FileSplit.tryLock(FilePathSplit.java:394)
at org.h2.store.fs.FilePathEncrypt$FileEncrypt.tryLock(FilePathEncrypt.java:399)
at org.h2.mvstore.cache.FilePathCache$FileCache.tryLock(FilePathCache.java:158)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:1155)
at org.h2.mvstore.FileStore.open(FileStore.java:164)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getLocalProperties(TransportPropertyManagerImpl.java:217)
at org.briarproject.bramble.plugin.PluginManagerImpl$Callback.getLocalProperties(PluginManagerImpl.java:311)
at org.briarproject.bramble.plugin.tcp.LanTcpPlugin.getLocalSocketAddresses(LanTcpPlugin.java:133)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.bind(TcpPlugin.java:162)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0(TcpPlugin.java:154)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0$TcpPlugin(Unknown Source:0)
at org.briarproject.bramble.plugin.tcp.-$$Lambda$TcpPlugin$IG7OujafuxmUKGD9Z35IgV8DTwo.run(Unknown Source:2)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0(PoliteExecutor.java:57)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0$PoliteExecutor(Unknown Source:0)
at org.briarproject.bramble.-$$Lambda$PoliteExecutor$wSvuPL6t_HUoaaqCVexrhJX_RSg.run(Unknown Source:6)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
11-07 15:48:24.821 I/TcpPlugin: Closing redundant server socket
11-07 15:48:24.827 W/PluginManagerImpl: org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:612)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getLocalProperties(TransportPropertyManagerImpl.java:217)
at org.briarproject.bramble.plugin.PluginManagerImpl$Callback.getLocalProperties(PluginManagerImpl.java:311)
at org.briarproject.bramble.plugin.tcp.LanTcpPlugin.getLocalSocketAddresses(LanTcpPlugin.java:133)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.bind(TcpPlugin.java:162)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0(TcpPlugin.java:155)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0$TcpPlugin(Unknown Source:0)
at org.briarproject.bramble.plugin.tcp.-$$Lambda$TcpPlugin$IG7OujafuxmUKGD9Z35IgV8DTwo.run(Unknown Source:2)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0(PoliteExecutor.java:57)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0$PoliteExecutor(Unknown Source:0)
at org.briarproject.bramble.-$$Lambda$PoliteExecutor$wSvuPL6t_HUoaaqCVexrhJX_RSg.run(Unknown Source:6)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.h2.mvstore.db.MVTableEngine$Store.convertIllegalStateException(MVTableEngine.java:187)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:167)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getLocalProperties(TransportPropertyManagerImpl.java:217)
at org.briarproject.bramble.plugin.PluginManagerImpl$Callback.getLocalProperties(PluginManagerImpl.java:311)
at org.briarproject.bramble.plugin.tcp.LanTcpPlugin.getLocalSocketAddresses(LanTcpPlugin.java:133)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.bind(TcpPlugin.java:162)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0(TcpPlugin.java:155)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0$TcpPlugin(Unknown Source:0)
at org.briarproject.bramble.plugin.tcp.-$$Lambda$TcpPlugin$IG7OujafuxmUKGD9Z35IgV8DTwo.run(Unknown Source:2)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0(PoliteExecutor.java:57)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0$PoliteExecutor(Unknown Source:0)
at org.briarproject.bramble.-$$Lambda$PoliteExecutor$wSvuPL6t_HUoaaqCVexrhJX_RSg.run(Unknown Source:6)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.IllegalStateException: The file is locked: split:30:/data/data/org.briarproject.briar.android/app_db/db.mv.db [1.4.192/7]
at org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:773)
at org.h2.mvstore.FileStore.open(FileStore.java:167)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getLocalProperties(TransportPropertyManagerImpl.java:217)
at org.briarproject.bramble.plugin.PluginManagerImpl$Callback.getLocalProperties(PluginManagerImpl.java:311)
at org.briarproject.bramble.plugin.tcp.LanTcpPlugin.getLocalSocketAddresses(LanTcpPlugin.java:133)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.bind(TcpPlugin.java:162)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0(TcpPlugin.java:155)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0$TcpPlugin(Unknown Source:0)
at org.briarproject.bramble.plugin.tcp.-$$Lambda$TcpPlugin$IG7OujafuxmUKGD9Z35IgV8DTwo.run(Unknown Source:2)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0(PoliteExecutor.java:57)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0$PoliteExecutor(Unknown Source:0)
at org.briarproject.bramble.-$$Lambda$PoliteExecutor$wSvuPL6t_HUoaaqCVexrhJX_RSg.run(Unknown Source:6)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.nio.channels.OverlappingFileLockException
at sun.nio.ch.SharedFileLockTable.checkList(FileLockTable.java:255)
at sun.nio.ch.SharedFileLockTable.add(FileLockTable.java:152)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:1125)
at org.h2.store.fs.FileDisk.tryLock(FilePathDisk.java:447)
at org.h2.store.fs.FileSplit.tryLock(FilePathSplit.java:394)
at org.h2.store.fs.FilePathEncrypt$FileEncrypt.tryLock(FilePathEncrypt.java:399)
at org.h2.mvstore.cache.FilePathCache$FileCache.tryLock(FilePathCache.java:158)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:1155)
at org.h2.mvstore.FileStore.open(FileStore.java:164)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getLocalProperties(TransportPropertyManagerImpl.java:217)
at org.briarproject.bramble.plugin.PluginManagerImpl$Callback.getLocalProperties(PluginManagerImpl.java:311)
at org.briarproject.bramble.plugin.tcp.LanTcpPlugin.getLocalSocketAddresses(LanTcpPlugin.java:133)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.bind(TcpPlugin.java:162)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0(TcpPlugin.java:155)
at org.briarproject.bramble.plugin.tcp.TcpPlugin.lambda$bind$0$TcpPlugin(Unknown Source:0)
at org.briarproject.bramble.plugin.tcp.-$$Lambda$TcpPlugin$IG7OujafuxmUKGD9Z35IgV8DTwo.run(Unknown Source:2)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0(PoliteExecutor.java:57)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0$PoliteExecutor(Unknown Source:0)
at org.briarproject.bramble.-$$Lambda$PoliteExecutor$wSvuPL6t_HUoaaqCVexrhJX_RSg.run(Unknown Source:6)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
11-07 15:48:24.833 I/TcpPlugin: Closing redundant server socket
11-07 15:48:44.583 I/DuplexOutgoingSession: Sending keepalive
11-07 15:48:48.197 I/DuplexOutgoingSession: Sending keepalive
11-07 15:48:55.861 I/AndroidTaskScheduler: Running 1 due tasks
11-07 15:48:55.861 I/AndroidTaskScheduler: Task is 1 ms overdue
11-07 15:48:56.612 I/PollerImpl: Polling plugin org.briarproject.bramble.lan
11-07 15:49:08.820 I/RenewableWakeLock: Renewing wake lock org.briarproject.briar.android
11-07 15:49:09.649 W/PollerImpl: org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:612)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.h2.mvstore.db.MVTableEngine$Store.convertIllegalStateException(MVTableEngine.java:187)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:167)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.IllegalStateException: The file is locked: split:30:/data/data/org.briarproject.briar.android/app_db/db.mv.db [1.4.192/7]
at org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:773)
at org.h2.mvstore.FileStore.open(FileStore.java:167)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.nio.channels.OverlappingFileLockException
at sun.nio.ch.SharedFileLockTable.checkList(FileLockTable.java:255)
at sun.nio.ch.SharedFileLockTable.add(FileLockTable.java:152)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:1125)
at org.h2.store.fs.FileDisk.tryLock(FilePathDisk.java:447)
at org.h2.store.fs.FileSplit.tryLock(FilePathSplit.java:394)
at org.h2.store.fs.FilePathEncrypt$FileEncrypt.tryLock(FilePathEncrypt.java:399)
at org.h2.mvstore.cache.FilePathCache$FileCache.tryLock(FilePathCache.java:158)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:1155)
at org.h2.mvstore.FileStore.open(FileStore.java:164)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
11-07 15:49:14.996 I/DuplexOutgoingSession: Sending keepalive
11-07 15:49:18.362 I/DuplexOutgoingSession: Sending keepalive
11-07 15:49:29.404 I/AndroidTaskScheduler: Running 1 due tasks
11-07 15:49:29.404 I/AndroidTaskScheduler: Task is 8874 ms overdue
11-07 15:49:29.404 I/FeedManagerImpl: Updating RSS feeds...
11-07 15:49:42.080 W/FeedManagerImpl: org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:612)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.briar.feed.FeedManagerImpl.getFeeds(FeedManagerImpl.java:237)
at org.briarproject.briar.feed.FeedManagerImpl.fetchFeeds(FeedManagerImpl.java:299)
at org.briarproject.briar.feed.-$$Lambda$soycJ-g1Pc6L6zZvAe_6bNrzInY.run(Unknown Source:2)
at org.briarproject.bramble.system.AndroidTaskScheduler.lambda$scheduleWithFixedDelay$2(AndroidTaskScheduler.java:132)
at org.briarproject.bramble.system.AndroidTaskScheduler.lambda$scheduleWithFixedDelay$2$AndroidTaskScheduler(Unknown Source:0)
at org.briarproject.bramble.system.-$$Lambda$AndroidTaskScheduler$zbbtt4N8iq0vPb0Ftc1m3t4mPPE.run(Unknown Source:12)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.h2.mvstore.db.MVTableEngine$Store.convertIllegalStateException(MVTableEngine.java:187)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:167)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.briar.feed.FeedManagerImpl.getFeeds(FeedManagerImpl.java:237)
at org.briarproject.briar.feed.FeedManagerImpl.fetchFeeds(FeedManagerImpl.java:299)
at org.briarproject.briar.feed.-$$Lambda$soycJ-g1Pc6L6zZvAe_6bNrzInY.run(Unknown Source:2)
at org.briarproject.bramble.system.AndroidTaskScheduler.lambda$scheduleWithFixedDelay$2(AndroidTaskScheduler.java:132)
at org.briarproject.bramble.system.AndroidTaskScheduler.lambda$scheduleWithFixedDelay$2$AndroidTaskScheduler(Unknown Source:0)
at org.briarproject.bramble.system.-$$Lambda$AndroidTaskScheduler$zbbtt4N8iq0vPb0Ftc1m3t4mPPE.run(Unknown Source:12)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.IllegalStateException: The file is locked: split:30:/data/data/org.briarproject.briar.android/app_db/db.mv.db [1.4.192/7]
at org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:773)
at org.h2.mvstore.FileStore.open(FileStore.java:167)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.briar.feed.FeedManagerImpl.getFeeds(FeedManagerImpl.java:237)
at org.briarproject.briar.feed.FeedManagerImpl.fetchFeeds(FeedManagerImpl.java:299)
at org.briarproject.briar.feed.-$$Lambda$soycJ-g1Pc6L6zZvAe_6bNrzInY.run(Unknown Source:2)
at org.briarproject.bramble.system.AndroidTaskScheduler.lambda$scheduleWithFixedDelay$2(AndroidTaskScheduler.java:132)
at org.briarproject.bramble.system.AndroidTaskScheduler.lambda$scheduleWithFixedDelay$2$AndroidTaskScheduler(Unknown Source:0)
at org.briarproject.bramble.system.-$$Lambda$AndroidTaskScheduler$zbbtt4N8iq0vPb0Ftc1m3t4mPPE.run(Unknown Source:12)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.nio.channels.OverlappingFileLockException
at sun.nio.ch.SharedFileLockTable.checkList(FileLockTable.java:255)
at sun.nio.ch.SharedFileLockTable.add(FileLockTable.java:152)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:1125)
at org.h2.store.fs.FileDisk.tryLock(FilePathDisk.java:447)
at org.h2.store.fs.FileSplit.tryLock(FilePathSplit.java:394)
at org.h2.store.fs.FilePathEncrypt$FileEncrypt.tryLock(FilePathEncrypt.java:399)
at org.h2.mvstore.cache.FilePathCache$FileCache.tryLock(FilePathCache.java:158)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:1155)
at org.h2.mvstore.FileStore.open(FileStore.java:164)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.briar.feed.FeedManagerImpl.getFeeds(FeedManagerImpl.java:237)
at org.briarproject.briar.feed.FeedManagerImpl.fetchFeeds(FeedManagerImpl.java:299)
at org.briarproject.briar.feed.-$$Lambda$soycJ-g1Pc6L6zZvAe_6bNrzInY.run(Unknown Source:2)
at org.briarproject.bramble.system.AndroidTaskScheduler.lambda$scheduleWithFixedDelay$2(AndroidTaskScheduler.java:132)
at org.briarproject.bramble.system.AndroidTaskScheduler.lambda$scheduleWithFixedDelay$2$AndroidTaskScheduler(Unknown Source:0)
at org.briarproject.bramble.system.-$$Lambda$AndroidTaskScheduler$zbbtt4N8iq0vPb0Ftc1m3t4mPPE.run(Unknown Source:12)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
11-07 15:49:44.609 I/DuplexOutgoingSession: Sending keepalive
11-07 15:49:48.198 I/DuplexOutgoingSession: Sending keepalive
11-07 15:49:56.189 I/AndroidTaskScheduler: Running 1 due tasks
11-07 15:49:56.189 I/AndroidTaskScheduler: Task is 900 ms overdue
11-07 15:49:56.190 I/PollerImpl: Polling plugin org.briarproject.bramble.tor
11-07 15:50:04.166 W/PollerImpl: org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:612)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.h2.mvstore.db.MVTableEngine$Store.convertIllegalStateException(MVTableEngine.java:187)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:167)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.IllegalStateException: The file is locked: split:30:/data/data/org.briarproject.briar.android/app_db/db.mv.db [1.4.192/7]
at org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:773)
at org.h2.mvstore.FileStore.open(FileStore.java:167)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.nio.channels.OverlappingFileLockException
at sun.nio.ch.SharedFileLockTable.checkList(FileLockTable.java:255)
at sun.nio.ch.SharedFileLockTable.add(FileLockTable.java:152)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:1125)
at org.h2.store.fs.FileDisk.tryLock(FilePathDisk.java:447)
at org.h2.store.fs.FileSplit.tryLock(FilePathSplit.java:394)
at org.h2.store.fs.FilePathEncrypt$FileEncrypt.tryLock(FilePathEncrypt.java:399)
at org.h2.mvstore.cache.FilePathCache$FileCache.tryLock(FilePathCache.java:158)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:1155)
at org.h2.mvstore.FileStore.open(FileStore.java:164)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
11-07 15:50:09.214 I/RenewableWakeLock: Renewing wake lock org.briarproject.briar.android
11-07 15:50:14.585 I/DuplexOutgoingSession: Sending keepalive
11-07 15:50:21.545 I/DuplexOutgoingSession: Sending keepalive
11-07 15:50:41.886 I/AndroidTaskScheduler: Running 1 due tasks
11-07 15:50:41.886 I/AndroidTaskScheduler: Task is 1594 ms overdue
11-07 15:50:44.432 I/PollerImpl: Polling plugin org.briarproject.bramble.lan
11-07 15:50:44.586 I/DuplexOutgoingSession: Sending keepalive
11-07 15:50:45.256 W/PollerImpl: org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:612)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.h2.mvstore.db.MVTableEngine$Store.convertIllegalStateException(MVTableEngine.java:187)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:167)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.IllegalStateException: The file is locked: split:30:/data/data/org.briarproject.briar.android/app_db/db.mv.db [1.4.192/7]
at org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:773)
at org.h2.mvstore.FileStore.open(FileStore.java:167)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.nio.channels.OverlappingFileLockException
at sun.nio.ch.SharedFileLockTable.checkList(FileLockTable.java:255)
at sun.nio.ch.SharedFileLockTable.add(FileLockTable.java:152)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:1125)
at org.h2.store.fs.FileDisk.tryLock(FilePathDisk.java:447)
at org.h2.store.fs.FileSplit.tryLock(FilePathSplit.java:394)
at org.h2.store.fs.FilePathEncrypt$FileEncrypt.tryLock(FilePathEncrypt.java:399)
at org.h2.mvstore.cache.FilePathCache$FileCache.tryLock(FilePathCache.java:158)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:1155)
at org.h2.mvstore.FileStore.open(FileStore.java:164)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
11-07 15:50:48.199 I/DuplexOutgoingSession: Sending keepalive
11-07 15:51:10.035 I/RenewableWakeLock: Renewing wake lock org.briarproject.briar.android
11-07 15:51:16.316 I/DuplexOutgoingSession: Sending keepalive
11-07 15:51:18.778 I/DuplexOutgoingSession: Sending keepalive
11-07 15:51:44.587 I/DuplexOutgoingSession: Sending keepalive
11-07 15:51:49.991 I/DuplexOutgoingSession: Sending keepalive
11-07 15:52:30.551 I/RenewableWakeLock: Renewing wake lock org.briarproject.briar.android
11-07 15:52:30.552 I/DuplexOutgoingSession: Sending keepalive
11-07 15:52:30.552 I/AndroidTaskScheduler: Running 1 due tasks
11-07 15:52:30.552 I/AndroidTaskScheduler: Task is 3351 ms overdue
11-07 15:52:31.440 I/DuplexOutgoingSession: Sending keepalive
11-07 15:52:31.441 I/PollerImpl: Polling plugin org.briarproject.bramble.lan
11-07 15:52:36.375 W/PollerImpl: org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:612)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: org.h2.jdbc.JdbcSQLException: Datenbank wird wahrscheinlich bereits benutzt: null. Mögliche Lösungen: alle Verbindungen schliessen; Server Modus verwenden
Database may be already in use: null. Possible solutions: close all other connection(s); use the server mode [90020-192]
at org.h2.mvstore.db.MVTableEngine$Store.convertIllegalStateException(MVTableEngine.java:187)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:167)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.IllegalStateException: The file is locked: split:30:/data/data/org.briarproject.briar.android/app_db/db.mv.db [1.4.192/7]
at org.h2.mvstore.DataUtils.newIllegalStateException(DataUtils.java:773)
at org.h2.mvstore.FileStore.open(FileStore.java:167)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.nio.channels.OverlappingFileLockException
at sun.nio.ch.SharedFileLockTable.checkList(FileLockTable.java:255)
at sun.nio.ch.SharedFileLockTable.add(FileLockTable.java:152)
at sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:1125)
at org.h2.store.fs.FileDisk.tryLock(FilePathDisk.java:447)
at org.h2.store.fs.FileSplit.tryLock(FilePathSplit.java:394)
at org.h2.store.fs.FilePathEncrypt$FileEncrypt.tryLock(FilePathEncrypt.java:399)
at org.h2.mvstore.cache.FilePathCache$FileCache.tryLock(FilePathCache.java:158)
at java.nio.channels.FileChannel.tryLock(FileChannel.java:1155)
at org.h2.mvstore.FileStore.open(FileStore.java:164)
at org.h2.mvstore.MVStore.<init>(MVStore.java:344)
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:2893)
at org.h2.mvstore.db.MVTableEngine$Store.open(MVTableEngine.java:154)
at org.h2.mvstore.db.MVTableEngine.init(MVTableEngine.java:99)
at org.h2.engine.Database.getPageStore(Database.java:2463)
at org.h2.engine.Database.open(Database.java:692)
at org.h2.engine.Database.openDatabase(Database.java:270)
at org.h2.engine.Database.<init>(Database.java:264)
at org.h2.engine.Engine.openSession(Engine.java:64)
at org.h2.engine.Engine.openSession(Engine.java:176)
at org.h2.engine.Engine.createSessionAndValidate(Engine.java:154)
at org.h2.engine.Engine.createSession(Engine.java:137)
at org.h2.engine.Engine.createSession(Engine.java:27)
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:349)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:118)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:102)
at org.h2.Driver.connect(Driver.java:72)
at java.sql.DriverManager.getConnection(DriverManager.java:569)
at java.sql.DriverManager.getConnection(DriverManager.java:191)
at org.briarproject.bramble.db.H2Database.createConnection(H2Database.java:108)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:602)
at org.briarproject.bramble.db.JdbcDatabase.startTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.startTransaction(DatabaseComponentImpl.java:163)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:210)
at org.briarproject.bramble.properties.TransportPropertyManagerImpl.getRemoteProperties(TransportPropertyManagerImpl.java:238)
at org.briarproject.bramble.plugin.PollerImpl.poll(PollerImpl.java:221)
at org.briarproject.bramble.plugin.PollerImpl.access$1000(PollerImpl.java:57)
at org.briarproject.bramble.plugin.PollerImpl$PollTask.run(PollerImpl.java:277)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$0(AndroidWakeLockManagerImpl.java:73)
at org.briarproject.bramble.system.-$$Lambda$AndroidWakeLockManagerImpl$P0v7ccI1GqbvGyqUJX4idUffuJI.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
11-07 15:52:45.396 I/DuplexOutgoingSession: Sending keepalive
11-07 15:52:45.400 I/ThreadScrollListener: Updating unread count: top=0 bottom=0
11-07 15:52:50.329 I/DuplexOutgoingSession: Sending keepalive
11-07 15:53:18.774 I/DuplexOutgoingSession: Sending keepalive
11-07 15:53:19.023 I/DuplexOutgoingSession: Sending keepalive
11-07 15:53:50.324 I/TorPlugin: OR connection LAUNCHED $F38FB55A8CCA6A00CDD024A5EA2CFECB38A48E15~Ichotolot64
11-07 15:53:50.324 I/DuplexOutgoingSession: Sending keepalive
11-07 15:53:50.324 I/RenewableWakeLock: Renewing wake lock org.briarproject.briar.android
11-07 15:53:54.439 I/DuplexOutgoingSession: Sending keepalive
11-07 15:54:03.918 I/TorPlugin: OR connection CONNECTED $F38FB55A8CCA6A00CDD024A5EA2CFECB38A48E15~Ichotolot64
11-07 15:54:37.686 I/DuplexOutgoingSession: Sending keepalive
11-07 15:54:37.687 I/DuplexOutgoingSession: Sending keepalive
11-07 15:54:39.083 W/ValidationManagerImpl: org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Nicht genug Hauptspeicher.
Out of memory.; SQL statement:
COMMIT [90108-192]
org.briarproject.bramble.api.db.DbException: org.h2.jdbc.JdbcSQLException: Nicht genug Hauptspeicher.
Out of memory.; SQL statement:
COMMIT [90108-192]
at org.briarproject.bramble.db.JdbcDatabase.commitTransaction(JdbcDatabase.java:648)
at org.briarproject.bramble.db.JdbcDatabase.commitTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.commitTransaction(DatabaseComponentImpl.java:176)
at org.briarproject.bramble.db.DatabaseComponentImpl.transaction(DatabaseComponentImpl.java:201)
at org.briarproject.bramble.sync.validation.ValidationManagerImpl.shareNextMessage(ValidationManagerImpl.java:375)
at org.briarproject.bramble.sync.validation.ValidationManagerImpl.lambda$shareNextMessageAsync$7(ValidationManagerImpl.java:369)
at org.briarproject.bramble.sync.validation.ValidationManagerImpl.lambda$shareNextMessageAsync$7$ValidationManagerImpl(Unknown Source:0)
at org.briarproject.bramble.sync.validation.-$$Lambda$ValidationManagerImpl$J4QHNieVQib5bjd901cZcemMbXY.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: org.h2.jdbc.JdbcSQLException: Nicht genug Hauptspeicher.
Out of memory.; SQL statement:
COMMIT [90108-192]
at org.h2.command.Command.executeUpdate(Command.java:264)
at org.h2.jdbc.JdbcConnection.commit(JdbcConnection.java:481)
at org.briarproject.bramble.db.JdbcDatabase.commitTransaction(JdbcDatabase.java:646)
at org.briarproject.bramble.db.JdbcDatabase.commitTransaction(JdbcDatabase.java:101)
at org.briarproject.bramble.db.DatabaseComponentImpl.commitTransaction(DatabaseComponentImpl.java:176)
at org.briarproject.bramble.db.DatabaseComponentImpl.transaction(DatabaseComponentImpl.java:201)
at org.briarproject.bramble.sync.validation.ValidationManagerImpl.shareNextMessage(ValidationManagerImpl.java:375)
at org.briarproject.bramble.sync.validation.ValidationManagerImpl.lambda$shareNextMessageAsync$7(ValidationManagerImpl.java:369)
at org.briarproject.bramble.sync.validation.ValidationManagerImpl.lambda$shareNextMessageAsync$7$ValidationManagerImpl(Unknown Source:0)
at org.briarproject.bramble.sync.validation.-$$Lambda$ValidationManagerImpl$J4QHNieVQib5bjd901cZcemMbXY.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
Caused by: java.lang.OutOfMemoryError: OutOfMemoryError thrown while trying to throw OutOfMemoryError; no stack trace available
```
Observations:
* There's a lot going on here
* ForumActivity is created, started and resumed at 15:47:36
* We don't see any log messages related to loading the forum's stored message ID, headers or bodies
* This could mean that those tasks never ran, or it could mean that the ViewModel was reused
* Based on keepalives, a couple of contacts seem to be connected - we don't get clear confirmation of this, as the poller tasks keep failing
* Some DB tasks seem to be succeeding at the start of the log ("Generated offer: false")
* Maybe DB tasks started failing after the start of the log - or maybe some tasks were already failing and others succeeding when the log started
* The first DB exception is logged at 15:48:24, about 48 seconds after opening the forum
* Two DB tasks fail in quick succession: the LAN plugin is looking up local transport properties for binding IPv4 and IPv6 sockets
* At 15:49:09 another DB task fails: polling the LAN plugin
* At 15:49:42 another DB task fails: loading the list of RSS feeds
* This suggests the OOM is unlikely to be RSS-related, as we never manage to load the list of feeds
* At 15:50:04 another DB task fails: polling the Tor plugin
* At 15:50:45 another DB task fails: polling the LAN plugin
* At 15:52:36 another DB task fails: polling the LAN plugin again
* All DB exceptions up to this point have been thrown when starting transactions
* Starting a transaction causes an H2 connection to be created, which suggests the DB's connection pool is empty
* Possibly related H2 bug: https://github.com/h2database/h2database/issues/1212
* Is it possible that our last DB connection was closed, which caused H2 to shut down automatically, and then we hit the H2 bug when we tried to open a new connection?
* This doesn't seem right - when DB connections are released, don't we keep them in the pool instead of closing them?
* At 15:54:39 (about 7 minutes after opening the forum) a final DB task fails with an OOM
* Unlike the other failures, this one happens when committing a transaction
* This suggests at least one DB connection may have been open when trying to open the connections that caused the earlier DB exceptions, so H2 bug 1212 may not be involved
* The last DB task to fail is the validation manager sharing a message
* The log doesn't show any acks being sent, so this message must have been received at least 7 minutes agoAndroid 1.4https://code.briarproject.org/briar/briar/-/issues/2218AssertionError in ImagePreviewAdapter2022-06-13T15:40:40ZakwizgranAssertionError in ImagePreviewAdapter* Unknown device and Android version
* Briar version: 1.3.8 (8076775)
Stacktrace:
```
java.lang.AssertionError
at org.briarproject.briar.android.view.ImagePreviewAdapter.loadItemPreview(ImagePreviewAdapter.java:57)
at or...* Unknown device and Android version
* Briar version: 1.3.8 (8076775)
Stacktrace:
```
java.lang.AssertionError
at org.briarproject.briar.android.view.ImagePreviewAdapter.loadItemPreview(ImagePreviewAdapter.java:57)
at org.briarproject.briar.android.view.ImagePreview.loadPreviewImage(ImagePreview.java:80)
at org.briarproject.briar.android.view.TextAttachmentController.onNewAttachmentItemResults(TextAttachmentController.java:206)
at org.briarproject.briar.android.view.TextAttachmentController.access$000(TextAttachmentController.java:44)
at org.briarproject.briar.android.view.TextAttachmentController$1.onChanged(TextAttachmentController.java:187)
at org.briarproject.briar.android.view.TextAttachmentController$1.onChanged(TextAttachmentController.java:179)
at androidx.lifecycle.LiveData.considerNotify(LiveData.java:133)
at androidx.lifecycle.LiveData.dispatchingValue(LiveData.java:151)
at androidx.lifecycle.LiveData.setValue(LiveData.java:309)
at androidx.lifecycle.MutableLiveData.setValue(MutableLiveData.java:50)
at androidx.lifecycle.LiveData$1.run(LiveData.java:93)
at android.os.Handler.handleCallback(Handler.java:808)
at android.os.Handler.dispatchMessage(Handler.java:101)
at android.os.Looper.loop(Looper.java:166)
at android.app.ActivityThread.main(ActivityThread.java:7529)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)
```
Edited log:
```
11-05 07:59:31.582 I/BaseActivity: Starting ConversationActivity
11-05 07:59:31.587 I/BaseActivity: Resuming ConversationActivity
11-05 07:59:36.274 I/BaseActivity: Pausing ConversationActivity
11-05 07:59:36.324 I/BaseActivity: Stopping ConversationActivity
11-05 07:59:43.717 I/BaseActivity: Starting ConversationActivity
11-05 07:59:43.718 I/BaseActivity: Resuming ConversationActivity
11-05 07:59:45.204 I/BaseActivity: Pausing ConversationActivity
11-05 07:59:45.544 I/BaseActivity: Stopping ConversationActivity
11-05 07:59:55.742 I/BaseActivity: Starting ConversationActivity
11-05 07:59:55.757 I/BaseActivity: Resuming ConversationActivity
11-05 07:59:55.770 I/ImageCompressorImpl: Original image size: 1009x1080
11-05 07:59:55.771 I/ImageCompressorImpl: Scaling attachment by factor of 2
11-05 07:59:55.881 I/ImageCompressorImpl: Compressed image to 28169 bytes, quality 50
11-05 08:00:00.017 I/BaseActivity: Pausing ConversationActivity
11-05 08:00:00.479 I/BaseActivity: Stopping ConversationActivity
11-05 08:01:00.413 I/BaseActivity: Starting ConversationActivity
11-05 08:01:00.427 I/BaseActivity: Resuming ConversationActivity
11-05 08:01:00.437 I/ImageCompressorImpl: Original image size: 1280x1256
11-05 08:01:00.437 I/ImageCompressorImpl: Scaling attachment by factor of 2
11-05 08:01:00.549 I/ImageCompressorImpl: Compressed image to 30288 bytes, quality 70
```
Looks like the user chose one image, then after a minute returned to ConversationActivity and chose a second image. The log shows one contact connected, and keepalives being sent, but no messages being sent.Android 1.4https://code.briarproject.org/briar/briar/-/issues/2217ArrayIndexOutOfBoundsException when reading a record2021-11-11T16:04:24ZakwizgranArrayIndexOutOfBoundsException when reading a record* Android version: 4.2.2
* Phone model: TCT One Touch 4033D (Yaris_M)
* Briar version: 1.3.8 (8076775)
Stacktrace:
```
java.lang.ArrayIndexOutOfBoundsException: src.length=1 srcPos=0 dst.length=4 dstPos=0 length=4
at java.lang.S...* Android version: 4.2.2
* Phone model: TCT One Touch 4033D (Yaris_M)
* Briar version: 1.3.8 (8076775)
Stacktrace:
```
java.lang.ArrayIndexOutOfBoundsException: src.length=1 srcPos=0 dst.length=4 dstPos=0 length=4
at java.lang.System.arraycopy(Native Method)
at java.io.BufferedInputStream.read(BufferedInputStream.java:286)
at libcore.io.Streams.readFully(Streams.java:81)
at java.io.DataInputStream.readFully(DataInputStream.java:120)
at java.io.DataInputStream.readFully(DataInputStream.java:116)
at org.briarproject.bramble.record.RecordReaderImpl.readRecord(RecordReaderImpl.java:35)
at org.briarproject.bramble.record.RecordReaderImpl.readRecord(RecordReaderImpl.java:52)
at org.briarproject.bramble.keyagreement.KeyAgreementTransport.readRecord(KeyAgreementTransport.java:114)
at org.briarproject.bramble.keyagreement.KeyAgreementTransport.receiveKey(KeyAgreementTransport.java:77)
at org.briarproject.bramble.keyagreement.KeyAgreementProtocol.receiveKey(KeyAgreementProtocol.java:130)
at org.briarproject.bramble.keyagreement.KeyAgreementProtocol.perform(KeyAgreementProtocol.java:107)
at org.briarproject.bramble.keyagreement.KeyAgreementTaskImpl.run(KeyAgreementTaskImpl.java:117)
```
Last lines of log
```
11-01 11:59:10.121 I/AddNearbyContactViewModel: Got result from decoder
11-01 11:59:10.121 I/AddNearbyContactViewModel: Remote payload is 48 bytes
11-01 11:59:10.123 I/KeyAgreementConnector: Starting outgoing BQP connections as Bob
11-01 11:59:10.124 I/CameraView: Stopping preview
11-01 11:59:10.125 I/KeyAgreementConnector: Connecting via org.briarproject.bramble.bluetooth
11-01 11:59:10.125 I/KeyAgreementConnector: Connecting via org.briarproject.bramble.lan
11-01 11:59:10.126 I/AbstractBluetoothPlugin: Connecting to key agreement UUID a2271b04-3c3a-3dea-a45c-e8d6bfa9aa62
11-01 11:59:10.126 I/AbstractBluetoothPlugin: Connecting to 1C:[scrubbed]:49
11-01 11:59:10.355 I/CameraView: Releasing camera
11-01 11:59:10.423 I/CameraView: Surface destroyed
11-01 11:59:12.841 I/AbstractBluetoothPlugin: Connected to 1C:[scrubbed]:49
11-01 11:59:12.841 I/BluetoothConnectionLimiterImpl: Connection opened, 1 open
11-01 11:59:12.842 I/KeyAgreementConnector: org.briarproject.bramble.bluetooth: Outgoing connection
11-01 11:59:17.975 I/RenewableWakeLock: Renewing wake lock org.briarproject.briar.android
11-01 11:59:22.841 I/AndroidTaskScheduler: Running 1 due tasks
11-01 11:59:22.841 I/AndroidTaskScheduler: Task is 0 ms overdue
11-01 11:59:32.842 I/AndroidTaskScheduler: Running 1 due tasks
11-01 11:59:32.843 I/AndroidTaskScheduler: Task is 0 ms overdue
11-01 11:59:42.106 I/AndroidTaskScheduler: Running 1 due tasks
11-01 11:59:42.106 I/AndroidTaskScheduler: Task is 2 ms overdue
11-01 11:59:42.107 I/PollerImpl: Polling plugin org.briarproject.bramble.lan
11-01 11:59:42.108 I/ConnectionRegistryImpl: 0 contacts connected or better: org.briarproject.bramble.lan
11-01 11:59:42.844 I/AndroidTaskScheduler: Running 1 due tasks
11-01 11:59:42.844 I/AndroidTaskScheduler: Task is 1 ms overdue
11-01 11:59:45.146 I/AndroidTaskScheduler: Running 1 due tasks
11-01 11:59:45.146 I/AndroidTaskScheduler: Task is 1 ms overdue
11-01 11:59:45.147 I/PollerImpl: Polling plugin org.briarproject.bramble.tor
11-01 11:59:45.148 I/ConnectionRegistryImpl: 0 contacts connected or better: org.briarproject.bramble.tor
11-01 11:59:52.849 I/AndroidTaskScheduler: Running 1 due tasks
11-01 11:59:52.849 I/AndroidTaskScheduler: Task is 1 ms overdue
11-01 11:59:58.011 I/KeyAgreementConnector: org.briarproject.bramble.bluetooth: Data available
11-01 11:59:58.011 I/ConnectionChooserImpl: Got connection for org.briarproject.bramble.bluetooth
11-01 11:59:58.022 I/KeyAgreementConnector: Stopping BQP listeners
11-01 11:59:58.026 I/ConnectionChooserImpl: java.io.IOException: [JSR82] accept: Connection is not created (failed or aborted).
11-01 11:59:58.034 I/ConnectionChooserImpl: Closing 0 unused connections
11-01 11:59:58.034 I/KeyAgreementTaskImpl: Starting BQP protocol
11-01 11:59:58.042 I/ConnectionChooserImpl: java.net.SocketException: Socket closed
```
I'm marking this issue as confidential in case it's remotely triggerable by sending a malformed record.Android 1.4https://code.briarproject.org/briar/briar/-/issues/2216SecurityException: Permission Denial for MANAGE_DOCUMENTS2021-11-11T16:04:24ZakwizgranSecurityException: Permission Denial for MANAGE_DOCUMENTSThis looks similar to #2143 and may be the same device as https://code.briarproject.org/briar/briar/-/issues/2143#note_56595, but with a different stacktrace.
* Android version: 5.1
* Phone model: Meizu M3s
* Briar version: 1.3.8 (80767...This looks similar to #2143 and may be the same device as https://code.briarproject.org/briar/briar/-/issues/2143#note_56595, but with a different stacktrace.
* Android version: 5.1
* Phone model: Meizu M3s
* Briar version: 1.3.8 (8076775)
* User feedback: "I uploaded a JPG photo, crashed."
Stacktrace:
```
java.lang.SecurityException: Permission Denial: opening provider com.android.providers.media.MediaDocumentsProvider from ProcessRecord{127a6dac 23863:org.briarproject.briar.android/u0a98} (pid=23863, uid=10098) requires android.permission.MANAGE_DOCUMENTS or android.permission.MANAGE_DOCUMENTS
at android.os.Parcel.readException(Parcel.java:1546)
at android.os.Parcel.readException(Parcel.java:1499)
at android.app.ActivityManagerProxy.getContentProvider(ActivityManagerNative.java:3579)
at android.app.ActivityThread.acquireProvider(ActivityThread.java:5203)
at android.app.ContextImpl$ApplicationContentResolver.acquireUnstableProvider(ContextImpl.java:2657)
at android.content.ContentResolver.acquireUnstableProvider(ContentResolver.java:1500)
at android.content.ContentResolver.openTypedAssetFileDescriptor(ContentResolver.java:1106)
at android.content.ContentResolver.openAssetFileDescriptor(ContentResolver.java:946)
at android.content.ContentResolver.openInputStream(ContentResolver.java:671)
at org.briarproject.briar.android.attachment.AttachmentCreationTask.storeAttachment(AttachmentCreationTask.java:103)
at org.briarproject.briar.android.attachment.AttachmentCreationTask.processUri(AttachmentCreationTask.java:79)
at org.briarproject.briar.android.attachment.AttachmentCreationTask.storeAttachments(AttachmentCreationTask.java:68)
at org.briarproject.briar.android.attachment.AttachmentCreatorImpl.lambda$null$0(AttachmentCreatorImpl.java:94)
at org.briarproject.briar.android.attachment.AttachmentCreatorImpl.lambda$null$0$AttachmentCreatorImpl(AttachmentCreatorImpl.java)
at org.briarproject.briar.android.attachment.-$$Lambda$AttachmentCreatorImpl$buxZfdoUf6j50-ilIY-ZnTGRVoE.run(lambda)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
```https://code.briarproject.org/briar/briar/-/issues/2215IllegalStateException when changing fragments in SettingsActivity2021-11-11T16:04:24ZakwizgranIllegalStateException when changing fragments in SettingsActivity* Android version: 4.2.2
* Briar version: 1.3.8 (8076775)
* Phone model: TCT One Touch 4033D (Yaris_M)
* User feedback: "I opened another app"
Last lines of log:
```
11-01 08:40:18.454 I/BaseActivity: Pausing TransportsActivity
11-01 08...* Android version: 4.2.2
* Briar version: 1.3.8 (8076775)
* Phone model: TCT One Touch 4033D (Yaris_M)
* User feedback: "I opened another app"
Last lines of log:
```
11-01 08:40:18.454 I/BaseActivity: Pausing TransportsActivity
11-01 08:40:18.467 I/BaseActivity: Starting NavDrawerActivity
11-01 08:40:18.467 I/BaseActivity: Resuming NavDrawerActivity
11-01 08:40:26.200 I/BaseActivity: Pausing NavDrawerActivity
11-01 08:40:26.228 I/BaseActivity: Creating SettingsActivity
11-01 08:40:26.280 I/BaseActivity: Starting SettingsActivity
11-01 08:40:26.280 I/BaseActivity: Resuming SettingsActivity
11-01 08:40:27.005 I/BaseActivity: Stopping TransportsActivity
11-01 08:40:27.007 I/BaseActivity: Destroying TransportsActivity
11-01 08:40:27.016 I/BaseActivity: Stopping NavDrawerActivity
11-01 08:40:31.697 I/BaseActivity: Pausing SettingsActivity
```
Stacktrace:
```
java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
at androidx.fragment.app.FragmentManager.checkStateLoss(FragmentManager.java:1844)
at androidx.fragment.app.FragmentManager.enqueueAction(FragmentManager.java:1884)
at androidx.fragment.app.BackStackRecord.commitInternal(BackStackRecord.java:329)
at androidx.fragment.app.BackStackRecord.commit(BackStackRecord.java:294)
at org.briarproject.briar.android.settings.SettingsActivity.showNextFragment(SettingsActivity.java:83)
at org.briarproject.briar.android.settings.SettingsActivity.onPreferenceStartFragment(SettingsActivity.java:72)
at androidx.preference.PreferenceFragmentCompat.onPreferenceTreeClick(PreferenceFragmentCompat.java:407)
at androidx.preference.Preference.performClick(Preference.java:1192)
at androidx.preference.Preference.performClick(Preference.java:1166)
at androidx.preference.Preference$1.onClick(Preference.java:181)
at android.view.View.performClick(View.java:4212)
at android.view.View$PerformClick.run(View.java:17476)
at android.os.Handler.handleCallback(Handler.java:800)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:194)
at android.app.ActivityThread.main(ActivityThread.java:5400)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:837)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:604)
at dalvik.system.NativeStart.main(Native Method)
```Android 1.4https://code.briarproject.org/briar/briar/-/issues/2213Feature request: Messages export ability supply users with endurance and dura...2022-02-16T13:50:27Zi iFeature request: Messages export ability supply users with endurance and durabilityIs there a way to export messages to csv file? or some way to copy the encrypted db and decrypt on a computer in order to create a csv ?
if for some reason i know my phone is about to be crashed or taken away, I would like a way to pass...Is there a way to export messages to csv file? or some way to copy the encrypted db and decrypt on a computer in order to create a csv ?
if for some reason i know my phone is about to be crashed or taken away, I would like a way to pass all messages to a usb key or something usable with the data from important messages.
is there some way to do such a thing?
nowdays there are many apps that offer security and privacy but not much that offer the possibility of all messages in a csv.
Of the security apps that are of interest to me and many others, that's the staus for the moment:
* Signal - gives an option to backup and decrypt the backup on a pc ,
* Session- doesnt give any option to export messages ,
* Briar - doesnt give any option to export messages,
Other apps - not so secure so its irrelvant
Thanks so muchhttps://code.briarproject.org/briar/briar/-/issues/2212Comply with Google emoji policy2023-07-31T15:02:31ZakwizgranComply with Google emoji policyGoogle has created a new policy that requires apps to support the latest emoji version within four months of its release.
https://support.google.com/googleplay/android-developer/answer/11190649#emoji_preview
To do this, we may need to ...Google has created a new policy that requires apps to support the latest emoji version within four months of its release.
https://support.google.com/googleplay/android-developer/answer/11190649#emoji_preview
To do this, we may need to replace our current emoji implementation with Google's emoji2 library, which can be used directly or via AppCompat.
https://developer.android.com/guide/topics/ui/look-and-feel/emoji2
By default this uses a downloadable font and requires a downloadable font provider such as Google Play Services. In order to work offline, avoid depending on Play Services and protect users' privacy, we would need to bundle the 10 MB emoji font in our APK.
https://developer.android.com/guide/topics/ui/look-and-feel/emoji2#support-bundled-fonts
The policy becomes effective on 2 February 2022.