Skip to content

Instantly share code, notes, and snippets.

@Lukom
Created March 2, 2024 22:16
Show Gist options
  • Save Lukom/71fbd2f643b32a12a253beee5b1b452a to your computer and use it in GitHub Desktop.
Save Lukom/71fbd2f643b32a12a253beee5b1b452a to your computer and use it in GitHub Desktop.
Signal 0.13.1 SQLITE_BUSY error
WARN ReceiveHelper - Message action failed.
java.lang.RuntimeException: Failed read from session store
at org.asamk.signal.manager.storage.sessions.SessionStore.storeSession(SessionStore.java:141)
at org.asamk.signal.manager.storage.protocol.SignalProtocolStore.storeSession(SignalProtocolStore.java:119)
at org.signal.libsignal.internal.Native.SessionBuilder_ProcessPreKeyBundle(Native Method)
at org.signal.libsignal.protocol.SessionBuilder.process(SessionBuilder.java:113)
at org.signal.libsignal.protocol.SessionBuilder.process(SessionBuilder.java:93)
at org.whispersystems.signalservice.api.crypto.SignalSessionBuilder.process(SignalSessionBuilder.java:24)
at org.whispersystems.signalservice.api.SignalServiceMessageSender.handleMismatchedDevices(SignalServiceMessageSender.java:2678)
at org.whispersystems.signalservice.api.SignalServiceMessageSender.sendMessage(SignalServiceMessageSender.java:2260)
at org.whispersystems.signalservice.api.SignalServiceMessageSender.sendReceipt(SignalServiceMessageSender.java:256)
at org.asamk.signal.manager.helper.SendHelper.lambda$sendReceiptMessage$0(SendHelper.java:130)
at org.asamk.signal.manager.helper.SendHelper.handleSendMessage(SendHelper.java:697)
at org.asamk.signal.manager.helper.SendHelper.sendReceiptMessage(SendHelper.java:129)
at org.asamk.signal.manager.actions.SendReceiptAction.execute(SendReceiptAction.java:29)
at org.asamk.signal.manager.helper.ReceiveHelper.handleQueuedActions(ReceiveHelper.java:310)
at org.asamk.signal.manager.helper.ReceiveHelper.receiveMessagesInternal(ReceiveHelper.java:225)
at org.asamk.signal.manager.helper.ReceiveHelper.receiveMessages(ReceiveHelper.java:104)
at org.asamk.signal.manager.helper.ReceiveHelper.receiveMessagesContinuously(ReceiveHelper.java:77)
at org.asamk.signal.manager.internal.ManagerImpl.lambda$startReceiveThreadIfRequired$10(ManagerImpl.java:1127)
at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: org.sqlite.SQLiteException: [SQLITE_BUSY] The database file is locked (database is locked)
at org.sqlite.core.DB.newSQLException(DB.java:1179)
at org.sqlite.core.DB.newSQLException(DB.java:1190)
at org.sqlite.core.DB.execute(DB.java:985)
at org.sqlite.core.DB.executeUpdate(DB.java:1054)
at org.sqlite.jdbc3.JDBC3PreparedStatement.lambda$executeLargeUpdate$2(JDBC3PreparedStatement.java:129)
at org.sqlite.jdbc3.JDBC3Statement.withConnectionTimeout(JDBC3Statement.java:454)
at org.sqlite.jdbc3.JDBC3PreparedStatement.executeLargeUpdate(JDBC3PreparedStatement.java:124)
at org.sqlite.jdbc3.JDBC3PreparedStatement.executeUpdate(JDBC3PreparedStatement.java:105)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeUpdate(ProxyPreparedStatement.java:61)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeUpdate(HikariProxyPreparedStatement.java)
at org.asamk.signal.manager.storage.sessions.SessionStore.storeSession(SessionStore.java:355)
at org.asamk.signal.manager.storage.sessions.SessionStore.storeSession(SessionStore.java:139)
... 18 common frames omitted
io.reactivex.rxjava3.exceptions.OnErrorNotImplementedException: The exception was not handled due to missing onError handler in the subscribe() method call. Further reading: https://github.com/ReactiveX/RxJava/wiki/Error-Handling | java.lang.RuntimeException: Failed update session store
at io.reactivex.rxjava3.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:718)
at io.reactivex.rxjava3.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:715)
at io.reactivex.rxjava3.internal.observers.LambdaObserver.onError(LambdaObserver.java:77)
at io.reactivex.rxjava3.internal.observers.LambdaObserver.onNext(LambdaObserver.java:67)
at io.reactivex.rxjava3.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:201)
at io.reactivex.rxjava3.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:255)
at io.reactivex.rxjava3.internal.schedulers.ExecutorScheduler$ExecutorWorker$BooleanRunnable.run(ExecutorScheduler.java:322)
at io.reactivex.rxjava3.internal.schedulers.ExecutorScheduler$ExecutorWorker.runEager(ExecutorScheduler.java:287)
at io.reactivex.rxjava3.internal.schedulers.ExecutorScheduler$ExecutorWorker.run(ExecutorScheduler.java:248)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: java.lang.RuntimeException: Failed update session store
at org.asamk.signal.manager.storage.sessions.SessionStore.archiveSessions(SessionStore.java:278)
at org.asamk.signal.manager.internal.ManagerImpl.lambda$new$1(ManagerImpl.java:209)
at io.reactivex.rxjava3.internal.observers.LambdaObserver.onNext(LambdaObserver.java:63)
... 8 more
Caused by: org.sqlite.SQLiteException: [SQLITE_BUSY] The database file is locked (database is locked)
at org.sqlite.core.DB.newSQLException(DB.java:1179)
at org.sqlite.core.DB.newSQLException(DB.java:1190)
at org.sqlite.core.DB.throwex(DB.java:1150)
at org.sqlite.core.DB.exec(DB.java:198)
at org.sqlite.SQLiteConnection.setAutoCommit(SQLiteConnection.java:369)
at com.zaxxer.hikari.pool.ProxyConnection.setAutoCommit(ProxyConnection.java:402)
at com.zaxxer.hikari.pool.HikariProxyConnection.setAutoCommit(HikariProxyConnection.java)
at org.asamk.signal.manager.storage.sessions.SessionStore.archiveSessions(SessionStore.java:262)
... 10 more
Exception in thread "pool-1-thread-1" io.reactivex.rxjava3.exceptions.OnErrorNotImplementedException: The exception was not handled due to missing onError handler in the subscribe() method call. Further reading: https://github.com/ReactiveX/RxJava/wiki/Error-Handling | java.lang.RuntimeException: Failed update session store
at io.reactivex.rxjava3.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:718)
at io.reactivex.rxjava3.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:715)
at io.reactivex.rxjava3.internal.observers.LambdaObserver.onError(LambdaObserver.java:77)
at io.reactivex.rxjava3.internal.observers.LambdaObserver.onNext(LambdaObserver.java:67)
at io.reactivex.rxjava3.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.java:201)
at io.reactivex.rxjava3.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:255)
at io.reactivex.rxjava3.internal.schedulers.ExecutorScheduler$ExecutorWorker$BooleanRunnable.run(ExecutorScheduler.java:322)
at io.reactivex.rxjava3.internal.schedulers.ExecutorScheduler$ExecutorWorker.runEager(ExecutorScheduler.java:287)
at io.reactivex.rxjava3.internal.schedulers.ExecutorScheduler$ExecutorWorker.run(ExecutorScheduler.java:248)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: java.lang.RuntimeException: Failed update session store
at org.asamk.signal.manager.storage.sessions.SessionStore.archiveSessions(SessionStore.java:278)
at org.asamk.signal.manager.internal.ManagerImpl.lambda$new$1(ManagerImpl.java:209)
at io.reactivex.rxjava3.internal.observers.LambdaObserver.onNext(LambdaObserver.java:63)
... 8 more
Caused by: org.sqlite.SQLiteException: [SQLITE_BUSY] The database file is locked (database is locked)
at org.sqlite.core.DB.newSQLException(DB.java:1179)
at org.sqlite.core.DB.newSQLException(DB.java:1190)
at org.sqlite.core.DB.throwex(DB.java:1150)
at org.sqlite.core.DB.exec(DB.java:198)
at org.sqlite.SQLiteConnection.setAutoCommit(SQLiteConnection.java:369)
at com.zaxxer.hikari.pool.ProxyConnection.setAutoCommit(ProxyConnection.java:402)
at com.zaxxer.hikari.pool.HikariProxyConnection.setAutoCommit(HikariProxyConnection.java)
at org.asamk.signal.manager.storage.sessions.SessionStore.archiveSessions(SessionStore.java:262)
... 10 more
WARN JobExecutor - Job SyncStorageJob failed
java.lang.RuntimeException: Failed read from group store
at org.asamk.signal.manager.storage.groups.GroupStore.getGroup(GroupStore.java:207)
at org.asamk.signal.manager.storage.groups.GroupStore.getGroupOrPartialMigrate(GroupStore.java:274)
at org.asamk.signal.manager.storage.groups.GroupStore.getGroupOrPartialMigrate(GroupStore.java:258)
at org.asamk.signal.manager.syncStorage.GroupV2RecordProcessor.updateLocal(GroupV2RecordProcessor.java:93)
at org.asamk.signal.manager.syncStorage.DefaultStorageRecordProcessor.process(DefaultStorageRecordProcessor.java:74)
at org.asamk.signal.manager.syncStorage.GroupV2RecordProcessor.process(GroupV2RecordProcessor.java:16)
at org.asamk.signal.manager.helper.StorageHelper.processKnownRecords(StorageHelper.java:537)
at org.asamk.signal.manager.helper.StorageHelper.readDataFromStorage(StorageHelper.java:175)
at org.asamk.signal.manager.helper.StorageHelper.syncDataWithStorage(StorageHelper.java:92)
at org.asamk.signal.manager.jobs.SyncStorageJob.run(SyncStorageJob.java:17)
at org.asamk.signal.manager.internal.JobExecutor.lambda$runNextJob$0(JobExecutor.java:59)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1583)
Caused by: org.sqlite.SQLiteException: [SQLITE_BUSY] The database file is locked (database is locked)
at org.sqlite.core.DB.newSQLException(DB.java:1179)
at org.sqlite.core.DB.newSQLException(DB.java:1190)
at org.sqlite.core.DB.execute(DB.java:985)
at org.sqlite.jdbc3.JDBC3PreparedStatement.lambda$executeQuery$1(JDBC3PreparedStatement.java:92)
at org.sqlite.jdbc3.JDBC3Statement.withConnectionTimeout(JDBC3Statement.java:454)
at org.sqlite.jdbc3.JDBC3PreparedStatement.executeQuery(JDBC3PreparedStatement.java:87)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeQuery(ProxyPreparedStatement.java:52)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeQuery(HikariProxyPreparedStatement.java)
at org.asamk.signal.manager.storage.Utils.executeQueryForOptional(Utils.java:87)
at org.asamk.signal.manager.storage.groups.GroupStore.getGroup(GroupStore.java:573)
at org.asamk.signal.manager.storage.groups.GroupStore.getGroup(GroupStore.java:221)
at org.asamk.signal.manager.storage.groups.GroupStore.getGroup(GroupStore.java:205)
... 13 common frames omitted
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment