briar issueshttps://code.briarproject.org/briar/briar/-/issues2022-06-06T14:40:46Zhttps://code.briarproject.org/briar/briar/-/issues/2324Tor stops responding to control port2022-06-06T14:40:46ZakwizgranTor stops responding to control port* Android version: 9
* Phone model: Motorola Moto E6 Play
* Briar version: 1.4.8 (4623d03c937e176f81fcfbc40a909c6932ccafe0)
While smoke testing the 1.4.8 release I was quickly toggling the Tor settings (enabling/disabling Tor, enabling/...* Android version: 9
* Phone model: Motorola Moto E6 Play
* Briar version: 1.4.8 (4623d03c937e176f81fcfbc40a909c6932ccafe0)
While smoke testing the 1.4.8 release I was quickly toggling the Tor settings (enabling/disabling Tor, enabling/disabling bridges, enabling/disabling Tor on battery) when Briar stopped responding to changes in the Tor settings.
After this happened, each time I changed the settings the Tor plugin still logged "Tor settings updated", indicating that the new settings had been written to the DB and detected by the plugin. But the usual log messages that would follow from updateConnectionStatus() didn't appear.
When I signed out, the plugin logged "Stopping Tor" but then the stop() method didn't return. Eventually I had to force-stop the app.
I spent a long time trying to reproduce the bug, but wasn't able to.
At first I suspected the problem might be caused by the PoliteExecutor that runs the lambdas created by updateConnectionStatus(), but that executor isn't used when stopping Tor. The fact that the stop() method didn't return suggests that the problem is either in jtorctl or in Tor itself (I think a bug in jtorctl is more likely).
Log: [moto-e6-tor-settings-updated.txt](/uploads/aaf30977794c5b935de8e1d5a53d955f/moto-e6-tor-settings-updated.txt)
Before the bug happened, the TorPlugin was logging some long queue times for tasks running on the PoliteExecutor, so in some cases the settings were being changed again before the previous changes had been applied to Tor. But this on its own isn't enough to reproduce the bug: adding a sleep to the end of the lambda created by updateConnectionStatus() caused long queue times but didn't trigger the bug.https://code.briarproject.org/briar/briar/-/issues/2322When Tor not active, adding a RSS feed fails with unclear error message2022-10-11T12:02:07ZAminda SuomalainenWhen Tor not active, adding a RSS feed fails with unclear error messageIf the option to connect to internet only when charging is set, feeds cannot be added or there will be an error message (which content I don't have at hand, but doesn't clearly tell what the issue is) and suggests trying again, which wil...If the option to connect to internet only when charging is set, feeds cannot be added or there will be an error message (which content I don't have at hand, but doesn't clearly tell what the issue is) and suggests trying again, which will result to the same problem.
The solution is to either uncheck the option or put the phone to charge and it will be able to add feeds without issues.
I think https://code.briarproject.org/briar/briar/-/issues/2247 would be a potential solution to this, but having the error message say that connecting to internet or unchecking the box is required.
Briar 1.4.7 (more device details in #2321)https://code.briarproject.org/briar/briar/-/issues/2317Restarting app quickly after startup failure sometimes does not work2022-05-04T10:43:53ZSebastianRestarting app quickly after startup failure sometimes does not workhttps://code.briarproject.org/briar/briar/-/issues/2312Briar fails to start if clock was unreasonably wrong on first run2022-05-11T14:23:37ZakwizgranBriar fails to start if clock was unreasonably wrong on first runSteps to reproduce:
* If a Briar account exists, delete it
* Set the system clock to a date before 1 Jan 2021
* Launch Briar and create an account
* Briar will show the startup failure screen due to the clock being wrong
* Set the system...Steps to reproduce:
* If a Briar account exists, delete it
* Set the system clock to a date before 1 Jan 2021
* Launch Briar and create an account
* Briar will show the startup failure screen due to the clock being wrong
* Set the system clock to the right date
* Launch Briar again
* The password screen will be shown
* Enter the password
* Briar will show the startup failure screen, saying the database is corrupt
Log snippet from the second run (after correcting the clock):
```
2022-04-27 08:54:55.872 22506-22542/org.briarproject.briar.android.debug I/H2Database: Contents of account directory before opening DB:
2022-04-27 08:54:55.872 22506-22542/org.briarproject.briar.android.debug I/H2Database: D /data/data/org.briarproject.briar.android.debug 4096
2022-04-27 08:54:55.872 22506-22542/org.briarproject.briar.android.debug I/H2Database: D /data/data/org.briarproject.briar.android.debug/lib 4096
2022-04-27 08:54:55.882 22506-22542/org.briarproject.briar.android.debug I/H2Database: F /data/data/org.briarproject.briar.android.debug/lib/libobfs4proxy.so 6481961
2022-04-27 08:54:55.882 22506-22542/org.briarproject.briar.android.debug I/H2Database: F /data/data/org.briarproject.briar.android.debug/lib/libtor.so 5957620
2022-04-27 08:54:55.882 22506-22542/org.briarproject.briar.android.debug I/H2Database: D /data/data/org.briarproject.briar.android.debug/cache 4096
2022-04-27 08:54:55.882 22506-22542/org.briarproject.briar.android.debug I/H2Database: D /data/data/org.briarproject.briar.android.debug/cache/com.android.renderscript.cache 4096
2022-04-27 08:54:55.882 22506-22542/org.briarproject.briar.android.debug I/H2Database: D /data/data/org.briarproject.briar.android.debug/shared_prefs 4096
2022-04-27 08:54:55.892 22506-22542/org.briarproject.briar.android.debug I/H2Database: F /data/data/org.briarproject.briar.android.debug/shared_prefs/org.briarproject.briar.android.debug_preferences.xml 115
2022-04-27 08:54:55.892 22506-22542/org.briarproject.briar.android.debug I/H2Database: F /data/data/org.briarproject.briar.android.debug/shared_prefs/_has_set_default_values.xml 126
2022-04-27 08:54:55.892 22506-22542/org.briarproject.briar.android.debug I/H2Database: F /data/data/org.briarproject.briar.android.debug/shared_prefs/db.xml 65
2022-04-27 08:54:55.892 22506-22542/org.briarproject.briar.android.debug I/H2Database: D /data/data/org.briarproject.briar.android.debug/app_key 4096
2022-04-27 08:54:55.892 22506-22542/org.briarproject.briar.android.debug I/H2Database: F /data/data/org.briarproject.briar.android.debug/app_key/db.key.bak 218
2022-04-27 08:54:55.892 22506-22542/org.briarproject.briar.android.debug I/H2Database: F /data/data/org.briarproject.briar.android.debug/app_key/db.key 218
2022-04-27 08:54:55.902 22506-22542/org.briarproject.briar.android.debug I/H2Database: D /data/data/org.briarproject.briar.android.debug/app_db 4096
2022-04-27 08:54:55.902 22506-22542/org.briarproject.briar.android.debug I/H2Database: D /data/data/org.briarproject.briar.android.debug/app_tor 4096
2022-04-27 08:54:55.902 22506-22542/org.briarproject.briar.android.debug I/H2Database: Reopening DB: false
```
Stacktrace:
```
2022-04-27 08:55:00.046 22506-22542/org.briarproject.briar.android.debug W/LifecycleManagerImpl: org.briarproject.bramble.api.db.DbException
org.briarproject.bramble.api.db.DbException
at org.briarproject.bramble.identity.IdentityManagerImpl.loadIdentityWithKeyPair(IdentityManagerImpl.java:159)
at org.briarproject.bramble.identity.IdentityManagerImpl.getCachedIdentity(IdentityManagerImpl.java:147)
at org.briarproject.bramble.identity.IdentityManagerImpl.onDatabaseOpened(IdentityManagerImpl.java:95)
at org.briarproject.bramble.lifecycle.LifecycleManagerImpl.lambda$startServices$0(LifecycleManagerImpl.java:129)
at org.briarproject.bramble.lifecycle.LifecycleManagerImpl.$r8$lambda$R30tTgoiROvN8ROsUbPogFK9rjY(LifecycleManagerImpl.java)
at org.briarproject.bramble.lifecycle.LifecycleManagerImpl$$ExternalSyntheticLambda0.run(Unknown Source)
at org.briarproject.bramble.db.DatabaseComponentImpl.transaction(DatabaseComponentImpl.java:200)
at org.briarproject.bramble.lifecycle.LifecycleManagerImpl.startServices(LifecycleManagerImpl.java:123)
at org.briarproject.briar.android.BriarService.lambda$onCreate$0(BriarService.java:141)
at org.briarproject.briar.android.BriarService.$r8$lambda$HDU85pNkqbcIvjlH9WM8JDDv2bo(BriarService.java)
at org.briarproject.briar.android.BriarService$$ExternalSyntheticLambda5.run(Unknown Source)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.lambda$executeWakefully$1(AndroidWakeLockManagerImpl.java:95)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl.$r8$lambda$HU3N-m0ADiLNH1gKAKkCiyTw2fM(AndroidWakeLockManagerImpl.java)
at org.briarproject.bramble.system.AndroidWakeLockManagerImpl$$ExternalSyntheticLambda0.run(Unknown Source)
at java.lang.Thread.run(Thread.java:856)
```
It looks like the DB key was saved on the first run but the DB wasn't created. On the second run we assumed an identity had already been created so we didn't store one, and then we got an exception when trying to load an identity from the newly created DB.Android 1.4https://code.briarproject.org/briar/briar/-/issues/2307Connections to Tor v3 hidden services fail repeatedly after about 1 second2023-03-15T12:45:52ZakwizgranConnections to Tor v3 hidden services fail repeatedly after about 1 secondConnections to Tor v3 hidden services sometimes fail repeatedly with `java.io.IOException: Connection failed: Host unreachable` after about 1 second, despite the remote peer being online.
To reproduce this, it's helpful to prevent the r...Connections to Tor v3 hidden services sometimes fail repeatedly with `java.io.IOException: Connection failed: Host unreachable` after about 1 second, despite the remote peer being online.
To reproduce this, it's helpful to prevent the remote peer from making outgoing connections (eg change the check at the top of TorPlugin#createConnection() from `if (getState() != ACTIVE) return null` to `if(getState() != ACTIVE || true) return null` for the remote peer only). This ensures that the local peer won't receive any incoming connections that would prevent it from polling.
Next, start both peers and wait for the local peer to connect to the remote peer. Disable Tor on the remote peer, wait for the local peer to notice that the connection has been lost, then re-enable Tor on the remote peer. The local peer's subsequent connection attempts will continue to fail after about 1 second each for about the next 2 minutes, despite the remote peer being online.
I wonder if Tor is storing some kind of internal state related to previous connection failures that causes subsequent connection attempts to fail early. This may be deliberate (eg avoiding frequent HS descriptor lookups or rendezvous attempts for the same hidden service). Still, it causes Briar to take longer than necessary to reconnect to a contact who has been offline.
Alternatively, perhaps the remote peer isn't reconnecting quickly to its introduction points after coming back online.https://code.briarproject.org/briar/briar/-/issues/2303Power management setup doesn't work on some Huawei devices2022-04-14T11:53:29ZakwizgranPower management setup doesn't work on some Huawei devicesSome Huawei devices running Android 10 throw a SecurityException when we try to open the App Launch settings (#2270).
!1602 fixed the crash by catching the exception, but we need to update the UI so that it shows instructions for openin...Some Huawei devices running Android 10 throw a SecurityException when we try to open the App Launch settings (#2270).
!1602 fixed the crash by catching the exception, but we need to update the UI so that it shows instructions for opening the App Launch settings manually.
These instructions will involve several steps and may be hard for users to follow. Unfortunately this means on affected Huawei devices, users are unlikely to succeed in protecting Briar from being killed.
Affected devices:
* Huawei P40 Pro without Google apps
* Huawei P30 Pro
* Huawei Mate 20 X
* Huawei Mate 20
Not affected:
* Huawei Y6P
* Honor 8Ahttps://code.briarproject.org/briar/briar/-/issues/2281IllegalArgumentException when resuming NavDrawerActivity2023-03-13T13:50:06ZakwizgranIllegalArgumentException when resuming NavDrawerActivity* Android version: 8.1.0
* Phone model: Meizu 16th (meizu_16th_CN)
* Briar version: 1.4.5 (4df523a)
Edited log:
```
03-02 16:07:06.639 I/PluginViewModel: TransportStateEvent: org.briarproject.bramble.tor is ACTIVE
03-02 16:07:11.736 I/A...* Android version: 8.1.0
* Phone model: Meizu 16th (meizu_16th_CN)
* Briar version: 1.4.5 (4df523a)
Edited log:
```
03-02 16:07:06.639 I/PluginViewModel: TransportStateEvent: org.briarproject.bramble.tor is ACTIVE
03-02 16:07:11.736 I/AndroidNetworkManager: Received broadcast android.intent.action.SCREEN_OFF
03-02 16:07:12.294 I/AndroidNetworkManager: Received broadcast android.intent.action.SCREEN_ON
3-02 16:07:14.655 I/BaseActivity: Starting NavDrawerActivity
03-02 16:07:14.999 I/BaseActivity: Stopping NavDrawerActivity
03-02 16:07:18.771 I/AndroidNetworkManager: Received broadcast android.intent.action.SCREEN_OFF
03-02 16:07:19.751 I/BaseActivity: Starting NavDrawerActivity
03-02 16:07:19.753 I/BaseActivity: Resuming NavDrawerActivity
03-02 16:07:19.954 I/AndroidNetworkManager: Received broadcast android.intent.action.SCREEN_ON
03-02 16:07:21.559 I/BaseActivity: Pausing NavDrawerActivity
03-02 16:07:22.150 I/BaseActivity: Stopping NavDrawerActivity
03-02 16:07:23.976 I/BaseActivity: Starting NavDrawerActivity
03-02 16:07:23.977 I/BaseActivity: Resuming NavDrawerActivity
```
Stacktrace:
```
java.lang.IllegalArgumentException: View=DecorView@4228967[] not attached to window manager
at android.view.WindowManagerGlobal.findViewLocked(WindowManagerGlobal.java:488)
at android.view.WindowManagerGlobal.updateViewLayout(WindowManagerGlobal.java:383)
at android.view.WindowManagerImpl.updateViewLayout(WindowManagerImpl.java:101)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3952)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1796)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:192)
at android.app.ActivityThread.main(ActivityThread.java:6842)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:438)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:886)
```
This looks like it's most likely a platform bug, so I'm not adding it to the current milestone for the time being.Android 1.4https://code.briarproject.org/briar/briar/-/issues/2279KeyStoreException: Too many operations2022-06-13T15:00:46ZakwizgranKeyStoreException: Too many operations* Android version: 11
* Phone model: Google Pixel 4a (sunfish)
* Briar version: 1.4.1 (6517f3f)
Log:
```
12-07 10:57:20.650 I/BriarApplicationImpl: Created
12-07 10:57:20.673 I/BaseActivity: Creating SplashScreenActivity
12-07 10:57:20....* Android version: 11
* Phone model: Google Pixel 4a (sunfish)
* Briar version: 1.4.1 (6517f3f)
Log:
```
12-07 10:57:20.650 I/BriarApplicationImpl: Created
12-07 10:57:20.673 I/BaseActivity: Creating SplashScreenActivity
12-07 10:57:20.683 I/BaseActivity: Starting SplashScreenActivity
12-07 10:57:20.685 I/BaseActivity: Resuming SplashScreenActivity
12-07 10:57:21.193 I/BaseActivity: Pausing SplashScreenActivity
12-07 10:57:21.206 I/BaseActivity: Creating NavDrawerActivity
12-07 10:57:21.242 I/BaseActivity: Starting NavDrawerActivity
12-07 10:57:21.243 I/BaseActivity: Resuming NavDrawerActivity
12-07 10:57:21.243 I/BriarActivity: Not signed in, launching StartupActivity
12-07 10:57:21.252 I/BaseActivity: Pausing NavDrawerActivity
12-07 10:57:21.259 I/BaseActivity: Creating StartupActivity
12-07 10:57:21.271 I/AccountManagerImpl: Found database key in primary file
12-07 10:57:21.272 I/BaseActivity: Starting StartupActivity
12-07 10:57:21.289 I/BaseActivity: Resuming StartupActivity
12-07 10:57:21.340 I/BaseActivity: Stopping NavDrawerActivity
12-07 10:57:21.758 I/BaseActivity: Stopping SplashScreenActivity
12-07 10:57:21.758 I/BaseActivity: Destroying SplashScreenActivity
12-07 10:57:22.336 I/BaseActivity: Pausing StartupActivity
12-07 10:57:22.918 I/BaseActivity: Stopping StartupActivity
12-07 10:57:25.564 I/BaseActivity: Starting StartupActivity
12-07 10:57:25.565 I/BaseActivity: Resuming StartupActivity
12-07 10:57:26.387 I/AccountManagerImpl: Found database key in primary file
12-07 10:57:27.178 I/AndroidKeyStrengthener: Loaded key from keystore
```
Stacktrace:
```
java.lang.RuntimeException: java.security.InvalidKeyException: Keystore operation failed
at org.briarproject.briar.android.AndroidKeyStrengthener.strengthenKey(AndroidKeyStrengthener.java:101)
at org.briarproject.bramble.crypto.CryptoComponentImpl.decryptWithPassword(CryptoComponentImpl.java:407)
at org.briarproject.bramble.account.AccountManagerImpl.loadAndDecryptDatabaseKey(AccountManagerImpl.java:214)
at org.briarproject.bramble.account.AccountManagerImpl.signIn(AccountManagerImpl.java:200)
at org.briarproject.briar.android.login.StartupViewModel.lambda$validatePassword$0(StartupViewModel.java:112)
at org.briarproject.briar.android.login.StartupViewModel.lambda$validatePassword$0$StartupViewModel(Unknown Source:0)
at org.briarproject.briar.android.login.-$$Lambda$StartupViewModel$5aurY1rQupylNVXCUST5DjfL1L4.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
Caused by: java.security.InvalidKeyException: Keystore operation failed
at android.security.KeyStore.getInvalidKeyException(KeyStore.java:1378)
at android.security.KeyStore.getInvalidKeyException(KeyStore.java:1388)
at android.security.keystore.KeyStoreCryptoOperationUtils.getInvalidKeyExceptionForInit(KeyStoreCryptoOperationUtils.java:54)
at android.security.keystore.AndroidKeyStoreHmacSpi.ensureKeystoreOperationInitialized(AndroidKeyStoreHmacSpi.java:184)
at android.security.keystore.AndroidKeyStoreHmacSpi.engineInit(AndroidKeyStoreHmacSpi.java:101)
at javax.crypto.Mac.chooseProvider(Mac.java:443)
at javax.crypto.Mac.init(Mac.java:513)
at org.briarproject.briar.android.AndroidKeyStrengthener.strengthenKey(AndroidKeyStrengthener.java:98)
... 9 more
Caused by: android.security.KeyStoreException: Too many operations
at android.security.KeyStore.getKeyStoreException(KeyStore.java:1301)
... 16 more
```https://code.briarproject.org/briar/briar/-/issues/2278KeyStoreException: Invalid operation handle2022-06-13T15:00:46ZakwizgranKeyStoreException: Invalid operation handle* Android version: 11
* Phone model: Motorola Moto G(9) Power (cebu_retailn)
* Briar version: 1.4.1 (6517f3f)
Log:
```
12-16 06:37:45.374 I/BriarApplicationImpl: Created
12-16 06:37:45.449 I/BaseActivity: Creating SplashScreenActivity
1...* Android version: 11
* Phone model: Motorola Moto G(9) Power (cebu_retailn)
* Briar version: 1.4.1 (6517f3f)
Log:
```
12-16 06:37:45.374 I/BriarApplicationImpl: Created
12-16 06:37:45.449 I/BaseActivity: Creating SplashScreenActivity
12-16 06:37:45.512 I/BaseActivity: Starting SplashScreenActivity
12-16 06:37:45.513 I/BaseActivity: Resuming SplashScreenActivity
12-16 06:37:45.998 I/BaseActivity: Pausing SplashScreenActivity
12-16 06:37:46.057 I/BaseActivity: Creating NavDrawerActivity
12-16 06:37:46.131 I/BaseActivity: Starting NavDrawerActivity
12-16 06:37:46.134 I/BaseActivity: Resuming NavDrawerActivity
12-16 06:37:46.134 I/BriarActivity: Not signed in, launching StartupActivity
12-16 06:37:46.174 I/BaseActivity: Pausing NavDrawerActivity
12-16 06:37:46.193 I/BaseActivity: Creating StartupActivity
12-16 06:37:46.217 I/AccountManagerImpl: Found database key in primary file
12-16 06:37:46.220 I/BaseActivity: Starting StartupActivity
12-16 06:37:46.302 I/BaseActivity: Resuming StartupActivity
12-16 06:37:46.514 I/BaseActivity: Stopping NavDrawerActivity
12-16 06:37:46.913 I/BaseActivity: Stopping SplashScreenActivity
12-16 06:37:46.914 I/BaseActivity: Destroying SplashScreenActivity
12-16 06:37:52.674 I/AccountManagerImpl: Found database key in primary file
12-16 06:37:57.264 I/AndroidKeyStrengthener: Loaded key from keystore
```
Stacktrace:
```
java.security.ProviderException: Keystore operation failed
at android.security.keystore.AndroidKeyStoreHmacSpi.engineDoFinal(AndroidKeyStoreHmacSpi.java:242)
at javax.crypto.Mac.doFinal(Mac.java:667)
at javax.crypto.Mac.doFinal(Mac.java:742)
at org.briarproject.briar.android.AndroidKeyStrengthener.strengthenKey(AndroidKeyStrengthener.java:99)
at org.briarproject.bramble.crypto.CryptoComponentImpl.decryptWithPassword(CryptoComponentImpl.java:407)
at org.briarproject.bramble.account.AccountManagerImpl.loadAndDecryptDatabaseKey(AccountManagerImpl.java:214)
at org.briarproject.bramble.account.AccountManagerImpl.signIn(AccountManagerImpl.java:200)
at org.briarproject.briar.android.login.StartupViewModel.lambda$validatePassword$0(StartupViewModel.java:112)
at org.briarproject.briar.android.login.StartupViewModel.lambda$validatePassword$0$StartupViewModel(Unknown Source:0)
at org.briarproject.briar.android.login.-$$Lambda$StartupViewModel$5aurY1rQupylNVXCUST5DjfL1L4.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:923)
Caused by: android.security.KeyStoreException: Invalid operation handle
at android.security.KeyStore.getKeyStoreException(KeyStore.java:1301)
at android.security.keystore.KeyStoreCryptoOperationChunkedStreamer.doFinal(KeyStoreCryptoOperationChunkedStreamer.java:176)
at android.security.keystore.AndroidKeyStoreHmacSpi.engineDoFinal(AndroidKeyStoreHmacSpi.java:236)
... 12 more
```https://code.briarproject.org/briar/briar/-/issues/2276IllegalStateException when restoring state of ConversationActivity2024-03-18T17:46:26ZakwizgranIllegalStateException when restoring state of ConversationActivity* Android version: 7.1.2
* Phone model: Samsung I9192I (lineage_serranove3gxx)
* Briar version: 1.4.4 (36670a8)
Edited log:
```
02-17 19:34:09.198 I/BaseActivity: Creating ConversationActivity
02-17 19:34:09.309 I/BaseActivity: Starting...* Android version: 7.1.2
* Phone model: Samsung I9192I (lineage_serranove3gxx)
* Briar version: 1.4.4 (36670a8)
Edited log:
```
02-17 19:34:09.198 I/BaseActivity: Creating ConversationActivity
02-17 19:34:09.309 I/BaseActivity: Starting ConversationActivity
02-17 19:34:09.330 I/BaseActivity: Resuming ConversationActivity
02-17 19:34:09.414 I/ConversationViewModel: PrivateMessageFormat loaded: TEXT_IMAGES_AUTO_DELETE
02-17 19:34:09.424 I/ImageCompressorImpl: Original image size: 600x450
02-17 19:34:09.424 I/ImageCompressorImpl: Scaling attachment by factor of 1
02-17 19:34:09.542 I/ConversationActivity: Eagerly loading text for latest message
02-17 19:34:09.668 I/ImageCompressorImpl: Compressed image to 32254 bytes, quality 50
02-17 19:34:18.123 I/BaseActivity: Pausing ConversationActivity
02-17 19:34:18.178 I/BaseActivity: Stopping ConversationActivity
02-17 19:34:18.226 I/BaseActivity: Destroying ConversationActivity
02-17 19:34:51.495 I/BaseActivity: Creating ConversationActivity
02-17 19:34:51.573 I/ConversationViewModel: PrivateMessageFormat loaded: TEXT_IMAGES_AUTO_DELETE
02-17 19:34:51.591 I/BaseActivity: Starting ConversationActivity
02-17 19:34:51.596 W/AttachmentCreatorImpl: No Task!
02-17 19:34:51.596 W/AttachmentCreatorImpl: No Result!
02-17 19:34:51.596 W/AttachmentCreatorImpl: Uris empty!
```
Stacktrace:
```
java.lang.RuntimeException: Unable to start activity ComponentInfo{org.briarproject.briar.android/org.briarproject.briar.android.conversation.ConversationActivity}: java.lang.IllegalStateException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2684)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2751)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1496)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6186)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)
Caused by: java.lang.IllegalStateException
at org.briarproject.briar.android.attachment.AttachmentCreatorImpl.getLiveAttachments(AttachmentCreatorImpl.java:107)
at org.briarproject.briar.android.conversation.ConversationViewModel.storeAttachments(ConversationViewModel.java:274)
at org.briarproject.briar.android.view.TextAttachmentController.onNewUris(TextAttachmentController.java:178)
at org.briarproject.briar.android.view.TextAttachmentController.onRestoreInstanceState(TextAttachmentController.java:242)
at org.briarproject.briar.android.view.TextInputView.onRestoreInstanceState(TextInputView.java:86)
at android.view.View.dispatchRestoreInstanceState(View.java:15755)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:3231)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:3237)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:3237)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:3237)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:3237)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:3237)
at android.view.View.restoreHierarchyState(View.java:15733)
at com.android.internal.policy.PhoneWindow.restoreHierarchyState(PhoneWindow.java:2106)
at android.app.Activity.onRestoreInstanceState(Activity.java:1048)
at org.briarproject.briar.android.conversation.ConversationActivity.onRestoreInstanceState(ConversationActivity.java:362)
at android.app.Activity.performRestoreInstanceState(Activity.java:1003)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1175)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2657)
... 9 more
```Android 1.4https://code.briarproject.org/briar/briar/-/issues/2275AssertionError when adding pending contact2022-02-28T15:06:45ZakwizgranAssertionError when adding pending contact* Android version: 5.1.1
* Phone model: Samsung SM-J120H (j1x3gxx)
* Briar version: 1.4.4 (36670a8)
Last lines of log:
```
02-24 09:47:54.504 I/BaseActivity: Pausing AddContactActivity
02-24 09:47:54.545 I/BaseActivity: Creating Pending...* Android version: 5.1.1
* Phone model: Samsung SM-J120H (j1x3gxx)
* Briar version: 1.4.4 (36670a8)
Last lines of log:
```
02-24 09:47:54.504 I/BaseActivity: Pausing AddContactActivity
02-24 09:47:54.545 I/BaseActivity: Creating PendingContactListActivity
```
Stacktrace:
```
java.lang.AssertionError
at org.briarproject.bramble.api.nullsafety.NullSafety.requireNull(NullSafety.java:30)
at org.briarproject.bramble.rendezvous.RendezvousPollerImpl.addPendingContact(RendezvousPollerImpl.java:180)
at org.briarproject.bramble.rendezvous.RendezvousPollerImpl.lambda$addPendingContactAsync$3(RendezvousPollerImpl.java:306)
at org.briarproject.bramble.rendezvous.RendezvousPollerImpl.$r8$lambda$Mi_U1ZCfMDPQHtgr1vajgSuXz0Y(RendezvousPollerImpl.java)
at org.briarproject.bramble.rendezvous.RendezvousPollerImpl$$ExternalSyntheticLambda3.run(Unknown Source)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0(PoliteExecutor.java:57)
at org.briarproject.bramble.PoliteExecutor.$r8$lambda$wSvuPL6t_HUoaaqCVexrhJX_RSg(PoliteExecutor.java)
at org.briarproject.bramble.PoliteExecutor$$ExternalSyntheticLambda0.run(Unknown Source)
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)
```Android 1.4https://code.briarproject.org/briar/briar/-/issues/2274BadTokenException from emoji popup2024-03-18T18:00:04ZakwizgranBadTokenException from emoji popup* Android version: 5.1.1
* Phone model: Samsung SM-J200G (j2ltedd)
* Briar version: 1.4.4 (36670a8)
Stacktrace:
```
android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running?...* Android version: 5.1.1
* Phone model: Samsung SM-J200G (j2ltedd)
* Briar version: 1.4.4 (36670a8)
Stacktrace:
```
android.view.WindowManager$BadTokenException: Unable to add window -- token null is not valid; is your activity running?
at android.view.ViewRootImpl.setView(ViewRootImpl.java:772)
at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:298)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
at android.widget.PopupWindow.invokePopup(PopupWindow.java:1185)
at android.widget.PopupWindow.showAtLocation(PopupWindow.java:983)
at android.widget.PopupWindow.showAtLocation(PopupWindow.java:942)
at com.vanniktech.emoji.EmojiPopup.showAtBottom(EmojiPopup.java:248)
at com.vanniktech.emoji.EmojiPopup.onReceiveResult(EmojiPopup.java:257)
at com.vanniktech.emoji.EmojiResultReceiver.onReceiveResult(EmojiResultReceiver.java:26)
at android.os.ResultReceiver$MyRunnable.run(ResultReceiver.java:50)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:145)
at android.app.ActivityThread.main(ActivityThread.java:6946)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
```
Log:
```
02-18 04:08:30.169 I/BriarApplicationImpl: Created
02-18 04:08:30.658 I/BaseActivity: Creating CrashReportActivity
02-18 04:08:31.197 I/BaseActivity: Starting CrashReportActivity
02-18 04:08:31.198 I/BaseActivity: Resuming CrashReportActivity
02-18 04:08:31.240 I/BaseActivity: Pausing CrashReportActivity
02-18 04:08:31.246 I/BaseActivity: Stopping CrashReportActivity
02-18 04:08:31.251 I/BaseActivity: Destroying CrashReportActivity
02-18 04:08:31.305 I/BaseActivity: Creating CrashReportActivity
02-18 04:08:31.345 W/LogDecrypterImpl: java.io.FileNotFoundException: /data/data/org.briarproject.briar.android/files/dev-logcat: open failed: ENOENT (No such file or directory)
java.io.FileNotFoundException: /data/data/org.briarproject.briar.android/files/dev-logcat: open failed: ENOENT (No such file or directory)
at libcore.io.IoBridge.open(IoBridge.java:456)
at java.io.FileInputStream.<init>(FileInputStream.java:76)
at org.briarproject.briar.android.logging.LogDecrypterImpl.decryptLogs(LogDecrypterImpl.java:45)
at org.briarproject.briar.android.reporting.ReportViewModel.lambda$init$0(ReportViewModel.java:97)
at org.briarproject.briar.android.reporting.ReportViewModel.$r8$lambda$9TLFESir3FK2Ov67pYo4zJIxFgo(ReportViewModel.java)
at org.briarproject.briar.android.reporting.ReportViewModel$$ExternalSyntheticLambda1.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:145)
at org.briarproject.briar.android.reporting.ReportViewModel$SingleShotAndroidExecutor.run(ReportViewModel.java:249)
Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory)
at libcore.io.Posix.open(Native Method)
at libcore.io.BlockGuardOs.open(BlockGuardOs.java:186)
at libcore.io.IoBridge.open(IoBridge.java:442)
at java.io.FileInputStream.<init>(FileInputStream.java:76)
at org.briarproject.briar.android.logging.LogDecrypterImpl.decryptLogs(LogDecrypterImpl.java:45)
at org.briarproject.briar.android.reporting.ReportViewModel.lambda$init$0(ReportViewModel.java:97)
at org.briarproject.briar.android.reporting.ReportViewModel.$r8$lambda$9TLFESir3FK2Ov67pYo4zJIxFgo(ReportViewModel.java)
at org.briarproject.briar.android.reporting.ReportViewModel$$ExternalSyntheticLambda1.run(Unknown Source)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:145)
at org.briarproject.briar.android.reporting.ReportViewModel$SingleShotAndroidExecutor.run(ReportViewModel.java:249)
```Android 1.4https://code.briarproject.org/briar/briar/-/issues/2271IllegalStateException when setting password2022-04-17T11:49:19ZakwizgranIllegalStateException when setting password* Android version: 9
* Phone models: Huawei Y6 Pro 2019, Honor 8A, Huawei nova 3i
* Briar version: 1.4.4 (Google Play)
Stacktrace:
```
java.lang.IllegalStateException:
at org.briarproject.briar.android.account.SetupViewModel.setPassw...* Android version: 9
* Phone models: Huawei Y6 Pro 2019, Honor 8A, Huawei nova 3i
* Briar version: 1.4.4 (Google Play)
Stacktrace:
```
java.lang.IllegalStateException:
at org.briarproject.briar.android.account.SetupViewModel.setPassword (SetupViewModel.java:84)
at org.briarproject.briar.android.account.SetPasswordFragment.onClick (SetPasswordFragment.java:123)
at android.view.View.performClick (View.java:6659)
at android.view.View.performClickInternal (View.java:6631)
at android.view.View.access$3100 (View.java:790)
at android.view.View$PerformClick.run (View.java:26187)
at android.os.Handler.handleCallback (Handler.java:907)
at android.os.Handler.dispatchMessage (Handler.java:105)
at android.os.Looper.loop (Looper.java:216)
at android.app.ActivityThread.main (ActivityThread.java:7625)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:524)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:987)
```Android 1.4https://code.briarproject.org/briar/briar/-/issues/2263Status of Tor plugin is unclear in connections screen2022-02-11T12:35:00ZakwizgranStatus of Tor plugin is unclear in connections screenWhen the "Use mobile data" setting is turned off or the "Connect to the Internet only when charging" setting is turned on, Briar might not connect to the internet even though the parent setting, "Connect to contacts via the Internet", is...When the "Use mobile data" setting is turned off or the "Connect to the Internet only when charging" setting is turned on, Briar might not connect to the internet even though the parent setting, "Connect to contacts via the Internet", is turned on.
In the main settings screen this is hopefully clear because all the settings are shown. But in the connections screen we only show the parent setting and the current status. So it may not be obvious that Briar is offline, or how to change this.https://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/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/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.4