Skip to content

Signal crashes at db migration V191_UniqueMessageMigrationV2.kt with "SQLiteLog: (267) statement aborts at 10: [...]" #13034

@derMart

Description

@derMart

Bug description

As title says, upgrading vom v6.14.x to v6.24.3.0-JW, see also log below. Although this is happening on JW fork, this is very certain not anything related to that fork.
See also #12410 where something similar happened on an older upgrade.
It seems something fundamentally is broken with the db migration code.
The "SQLiteLog: (267) statement aborts at 10:" is also very interesting, but I can't figure out what the error is (maybe the log is cutoff here?)

Steps to reproduce

  • upgrade version
  • start new version
  • crash

logcat

06-26 22:57:47.746 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS mms_read_and_notified_and_thread_id_index
06-26 22:57:47.765 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS mms_type_index
06-26 22:57:47.784 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS mms_date_sent_index
06-26 22:57:47.811 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS mms_date_server_index
06-26 22:57:47.828 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS mms_thread_date_index
06-26 22:57:47.850 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS mms_reactions_unread_index
06-26 22:57:47.863 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS mms_story_type_index
06-26 22:57:47.876 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS mms_parent_story_id_index
06-26 22:57:47.888 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS mms_exported_index
06-26 22:57:47.901 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS mms_id_type_payment_transactions_index
06-26 22:57:47.904 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS mms_thread_story_parent_story_scheduled_date_index
06-26 22:57:47.930 25251 25321 D V185_MessageRecipientsA: Executing: DROP trigger IF EXISTS message_ai
06-26 22:57:47.932 25251 25321 D V185_MessageRecipientsA: Executing: DROP trigger IF EXISTS message_ad
06-26 22:57:47.933 25251 25321 D V185_MessageRecipientsA: Executing: DROP trigger IF EXISTS message_au
06-26 22:57:47.934 25251 25321 D V185_MessageRecipientsA: Executing: DROP index IF EXISTS message_quote_id_quote_author_scheduled_date_index
06-26 22:57:47.950 25251 25321 D V185_MessageRecipientsA: Executing: DROP trigger IF EXISTS msl_message_delete
06-26 22:57:49.058 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_read_and_notified_and_thread_id_index ON "message"(read, notified, thread_id)
06-26 22:57:49.369 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_type_index ON "message" (type)
06-26 22:57:49.569 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_date_sent_from_to_thread_index ON message (date_sent, from_recipient_id, to_recipient_id, thread_id)
06-26 22:57:49.770 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_date_server_index ON "message" (date_server)
06-26 22:57:49.966 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_thread_date_index ON "message" (thread_id, date_received)
06-26 22:57:50.207 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_reactions_unread_index ON "message" (reactions_unread)
06-26 22:57:50.387 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_story_type_index ON "message" (story_type)
06-26 22:57:50.571  2025  2025 D VideoCall_LowBattery: disconnectVideoCalls on low battery
06-26 22:57:50.571  2025  2025 D VideoCall_LowBattery: disconnectVideoCalls 
06-26 22:57:50.572 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_parent_story_id_index ON "message" (parent_story_id)
06-26 22:57:50.572   797   797 D lights.sony: setLight : Type::BATTERY
06-26 22:57:50.573   797   797 D lights.sony: set_speaker_light_locked mode 1 colorRGB=4294901760 onMS=125 offMS=2875 result: 1
06-26 22:57:50.744 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_exported_index ON "message" (exported)
06-26 22:57:51.042 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_id_type_payment_transactions_index ON "message" (_id, type) WHERE type & 12884901888 != 0
06-26 22:57:51.135 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_thread_story_parent_story_scheduled_date_latest_revision_id_index ON message (thread_id, date_received, story_type, parent_story_id, scheduled_date, latest_revision_id)
06-26 22:57:51.451 25251 25321 D V185_MessageRecipientsA: Executing: CREATE TRIGGER message_ai AFTER INSERT ON message BEGIN
06-26 22:57:51.451 25251 25321 D V185_MessageRecipientsA:         INSERT INTO message_fts(rowid, body, thread_id) VALUES (new._id, new.body, new.thread_id);
06-26 22:57:51.451 25251 25321 D V185_MessageRecipientsA:       END
06-26 22:57:51.454 25251 25321 D V185_MessageRecipientsA: Executing: CREATE TRIGGER message_ad AFTER DELETE ON message BEGIN
06-26 22:57:51.454 25251 25321 D V185_MessageRecipientsA:         INSERT INTO message_fts(message_fts, rowid, body, thread_id) VALUES ('delete', old._id, old.body, old.thread_id);
06-26 22:57:51.454 25251 25321 D V185_MessageRecipientsA:       END
06-26 22:57:51.458 25251 25321 D V185_MessageRecipientsA: Executing: CREATE TRIGGER message_au AFTER UPDATE ON message BEGIN
06-26 22:57:51.458 25251 25321 D V185_MessageRecipientsA:         INSERT INTO message_fts(message_fts, rowid, body, thread_id) VALUES('delete', old._id, old.body, old.thread_id);
06-26 22:57:51.458 25251 25321 D V185_MessageRecipientsA:         INSERT INTO message_fts(rowid, body, thread_id) VALUES (new._id, new.body, new.thread_id);
06-26 22:57:51.458 25251 25321 D V185_MessageRecipientsA:       END
06-26 22:57:51.462 25251 25321 D V185_MessageRecipientsA: Executing: CREATE INDEX message_quote_id_quote_author_scheduled_date_index ON message (quote_id, quote_author, scheduled_date)
06-26 22:57:51.711 25251 25321 D V185_MessageRecipientsA: Executing: CREATE TRIGGER msl_message_delete AFTER DELETE ON message 
06-26 22:57:51.711 25251 25321 D V185_MessageRecipientsA:         BEGIN 
06-26 22:57:51.711 25251 25321 D V185_MessageRecipientsA:         	DELETE FROM msl_payload WHERE _id IN (SELECT payload_id FROM msl_message WHERE message_id = old._id);
06-26 22:57:51.711 25251 25321 D V185_MessageRecipientsA:         END
06-26 22:57:51.900 25251 25321 D V185_MessageRecipientsA: [migration] get-self: 29  drop-dependents: 214  create-table: 3  copy-data: 648  update-data: 262  drop-old-table: 176  rename-table: 15  recreate-dependents: 2658  fk-check: 186  total: 4191
06-26 22:57:53.555 25251 25321 D V186_ForeignKeyIndicesM: [migration] original_message_id: 211  latest_revision_id: 191  from_recipient_id: 218  to_recipient_id: 216  reaction_author: 10  message_fix: 271  analyze: 518  total: 1635
06-26 22:57:53.576 25251 25321 D V187_MoreForeignKeyInde: [migration] call_link: 4  call_peer: 1  dlist_member: 2  msl_payload: 10  total: 17
06-26 22:57:53.602 25251 25321 I V188_FixMessageRecipien: Already performed the migration! No need to do this.
06-26 22:57:53.817 25251 25321 E SQLiteLog: (267) statement aborts at 10: [WITH needs_update AS (
06-26 22:57:53.817 25251 25321 E SQLiteLog:         SELECT
06-26 22:57:53.817 25251 25321 E SQLiteLog:           _id
06-26 22:57:53.817 25251 25321 E SQLiteLog:         FROM
06-26 22:57:53.817 25251 25321 E SQLiteLog:           message M
06-26 22:57:53.817 25251 25321 E SQLiteLog:         WHERE
06-26 22:57:53.817 25251 25321 E SQLiteLog:           (
06-26 22:57:53.817 25251 25321 E SQLiteLog:             type & 262144 != 0
06-26 22:57:53.817 25251 25321 E SQLiteLog:             OR type & 268435456 != 0
06-26 22:57:53.817 25251 25321 E SQLiteLog:      
06-26 22:57:55.578   797   797 D lights.sony: setLight : Type::BATTERY
06-26 22:57:55.578  2025  2025 D VideoCall_LowBattery: disconnectVideoCalls on low battery
06-26 22:57:55.578  2025  2025 D VideoCall_LowBattery: disconnectVideoCalls 
06-26 22:57:55.578   797   797 D lights.sony: set_speaker_light_locked mode 1 colorRGB=4294901760 onMS=125 offMS=2875 result: 1
06-26 22:57:56.262 25251 25321 W crime.securesm: JNI critical lock held for 202.939ms on Thread[28,tid=25321,Runnable,Thread*=0x7b147e0000,peer=0x12f83800,"signal-bounded-1"]
06-26 22:57:56.472 25251 25321 W crime.securesm: JNI critical lock held for 199.148ms on Thread[28,tid=25321,Runnable,Thread*=0x7b147e0000,peer=0x12f83800,"signal-bounded-1"]
06-26 22:57:56.477 25251 25321 E SqlCipherErrorHandler: Database 'signal.db' corrupted!
06-26 22:57:56.478 25251 25321 E SqlCipherErrorHandler: [sqlite] FullCode: 267 | ErrorCode: 11 | ExtendedErrorCode: 1 | Message: database disk image is malformed | ExtraMessage: null
06-26 22:57:56.478 25251 25321 E SqlCipherErrorHandler: Diagnostic results:
06-26 22:57:56.478 25251 25321 E SqlCipherErrorHandler:   ===== PRAGMA integrity_check (same-connection) =====
06-26 22:57:56.478 25251 25321 E SqlCipherErrorHandler: ok
06-26 22:57:56.478 25251 25321 E SqlCipherErrorHandler: 
06-26 22:57:56.478 25251 25321 E SqlCipherErrorHandler: ===== PRAGMA cipher_integrity_check (same-connection) =====
06-26 22:57:56.478 25251 25321 E SqlCipherErrorHandler: 
06-26 22:57:56.489 25251 25321 W SearchTable: [fullyResetTables] Dropping tables and triggers...
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: Failed to clear full text search index.
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: java.lang.IllegalStateException: getDatabase called recursively
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at net.zetetic.database.sqlcipher.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:318)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at net.zetetic.database.sqlcipher.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:278)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.SignalDatabase.getSignalWritableDatabase(SignalDatabase.kt:204)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.DatabaseTable.getWritableDatabase(DatabaseTable.java:91)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.SearchTable.fullyResetTables(SearchTable.kt:236)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.SqlCipherErrorHandler.attemptToClearFullTextSearchIndex(SqlCipherErrorHandler.kt:149)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.SqlCipherErrorHandler.onCorruption(SqlCipherErrorHandler.kt:38)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at net.zetetic.database.sqlcipher.SQLiteDatabase.onCorruption(SQLiteDatabase.java:348)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at net.zetetic.database.sqlcipher.SQLiteProgram.onCorruption(SQLiteProgram.java:117)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at net.zetetic.database.sqlcipher.SQLiteStatement.executeUpdateDelete(SQLiteStatement.java:74)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at net.zetetic.database.sqlcipher.SQLiteDatabase.executeSql(SQLiteDatabase.java:1993)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at net.zetetic.database.sqlcipher.SQLiteDatabase.execSQL(SQLiteDatabase.java:1900)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.helpers.migration.V191_UniqueMessageMigrationV2.migrate(V191_UniqueMessageMigrationV2.kt:43)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.helpers.SignalDatabaseMigrations.migrate(SignalDatabaseMigrations.kt:237)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.SignalDatabase.onUpgrade(SignalDatabase.kt:170)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at net.zetetic.database.sqlcipher.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:403)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at net.zetetic.database.sqlcipher.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:302)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.SignalDatabase.getRawReadableDatabase(SignalDatabase.kt:195)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.SignalDatabase$Companion.hasTable(SignalDatabase.kt:311)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.SignalDatabase.hasTable(Unknown Source:2)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.JobDatabase.dropTableIfPresent(JobDatabase.java:377)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.JobDatabase.lambda$onOpen$0$org-thoughtcrime-securesms-database-JobDatabase(JobDatabase.java:148)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.thoughtcrime.securesms.database.JobDatabase$$ExternalSyntheticLambda7.run(Unknown Source:2)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at java.lang.Thread.run(Thread.java:919)
06-26 22:57:56.494 25251 25321 W SqlCipherErrorHandler: 	at org.signal.core.util.concurrent.SignalExecutors$NumberedThreadFactory$1.run(SignalExecutors.java:109)
06-26 22:57:56.533 25251 25323 W crime.securesm: Long monitor contention with owner signal-bounded-1 (25321) at int net.zetetic.database.sqlcipher.SQLiteConnection.nativeExecuteForChangedRowCount(long, long)(SQLiteConnection.java:-2) waiters=0 in net.zetetic.database.sqlcipher.SQLiteDatabase net.zetetic.database.sqlcipher.SQLiteOpenHelper.getReadableDatabase() for 16.520s
06-26 22:57:56.538 25251 25321 E AndroidRuntime: FATAL EXCEPTION: signal-bounded-1
06-26 22:57:56.538 25251 25321 E AndroidRuntime: Process: org.thoughtcrime.securesms, PID: 25251
06-26 22:57:56.538 25251 25321 E AndroidRuntime: org.thoughtcrime.securesms.database.SqlCipherErrorHandler$DatabaseCorruptedError_BothChecksPass
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at org.thoughtcrime.securesms.database.SqlCipherErrorHandler.onCorruption(SqlCipherErrorHandler.kt:39)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at net.zetetic.database.sqlcipher.SQLiteDatabase.onCorruption(SQLiteDatabase.java:348)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at net.zetetic.database.sqlcipher.SQLiteProgram.onCorruption(SQLiteProgram.java:117)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at net.zetetic.database.sqlcipher.SQLiteStatement.executeUpdateDelete(SQLiteStatement.java:74)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at net.zetetic.database.sqlcipher.SQLiteDatabase.executeSql(SQLiteDatabase.java:1993)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at net.zetetic.database.sqlcipher.SQLiteDatabase.execSQL(SQLiteDatabase.java:1900)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at org.thoughtcrime.securesms.database.helpers.migration.V191_UniqueMessageMigrationV2.migrate(V191_UniqueMessageMigrationV2.kt:43)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at org.thoughtcrime.securesms.database.helpers.SignalDatabaseMigrations.migrate(SignalDatabaseMigrations.kt:237)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at org.thoughtcrime.securesms.database.SignalDatabase.onUpgrade(SignalDatabase.kt:170)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at net.zetetic.database.sqlcipher.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:403)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at net.zetetic.database.sqlcipher.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:302)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at org.thoughtcrime.securesms.database.SignalDatabase.getRawReadableDatabase(SignalDatabase.kt:195)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at org.thoughtcrime.securesms.database.SignalDatabase$Companion.hasTable(SignalDatabase.kt:311)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at org.thoughtcrime.securesms.database.SignalDatabase.hasTable(Unknown Source:2)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at org.thoughtcrime.securesms.database.JobDatabase.dropTableIfPresent(JobDatabase.java:377)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at org.thoughtcrime.securesms.database.JobDatabase.lambda$onOpen$0$org-thoughtcrime-securesms-database-JobDatabase(JobDatabase.java:148)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at org.thoughtcrime.securesms.database.JobDatabase$$ExternalSyntheticLambda7.run(Unknown Source:2)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at java.lang.Thread.run(Thread.java:919)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at org.signal.core.util.concurrent.SignalExecutors$NumberedThreadFactory$1.run(SignalExecutors.java:109)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at [[ ↑↑ Original Trace ↑↑ ]].(:0)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at [[ ↓↓ Inferred Trace ↓↓ ]].(:0)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at Database 'signal.db' corrupted!.(:0)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at [sqlite] FullCode: 267 | ErrorCode: 11 | ExtendedErrorCode: 1 | Message: database disk image is malformed | ExtraMessage: null.(:0)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at Diagnostics results:.(:0)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at  ===== PRAGMA integrity_check (same-connection) =====.(:0)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at ok.(:0)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at .(:0)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at ===== PRAGMA cipher_integrity_check (same-connection) =====.(:0)
06-26 22:57:56.538 25251 25321 E AndroidRuntime: 	at .(:0)
06-26 22:57:56.540 25251 25323 I SQLiteConnection: Database keying operation returned:0
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: org.thoughtcrime.securesms.database.SqlCipherErrorHandler$DatabaseCorruptedError_BothChecksPass
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at org.thoughtcrime.securesms.database.SqlCipherErrorHandler.onCorruption(SqlCipherErrorHandler.kt:39)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at net.zetetic.database.sqlcipher.SQLiteDatabase.onCorruption(SQLiteDatabase.java:348)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at net.zetetic.database.sqlcipher.SQLiteProgram.onCorruption(SQLiteProgram.java:117)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at net.zetetic.database.sqlcipher.SQLiteStatement.executeUpdateDelete(SQLiteStatement.java:74)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at net.zetetic.database.sqlcipher.SQLiteDatabase.executeSql(SQLiteDatabase.java:1993)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at net.zetetic.database.sqlcipher.SQLiteDatabase.execSQL(SQLiteDatabase.java:1900)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at org.thoughtcrime.securesms.database.helpers.migration.V191_UniqueMessageMigrationV2.migrate(V191_UniqueMessageMigrationV2.kt:43)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at org.thoughtcrime.securesms.database.helpers.SignalDatabaseMigrations.migrate(SignalDatabaseMigrations.kt:237)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at org.thoughtcrime.securesms.database.SignalDatabase.onUpgrade(SignalDatabase.kt:170)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at net.zetetic.database.sqlcipher.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:403)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at net.zetetic.database.sqlcipher.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:302)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at org.thoughtcrime.securesms.database.SignalDatabase.getRawReadableDatabase(SignalDatabase.kt:195)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at org.thoughtcrime.securesms.database.SignalDatabase$Companion.hasTable(SignalDatabase.kt:311)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at org.thoughtcrime.securesms.database.SignalDatabase.hasTable(Unknown Source:2)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at org.thoughtcrime.securesms.database.JobDatabase.dropTableIfPresent(JobDatabase.java:377)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at org.thoughtcrime.securesms.database.JobDatabase.lambda$onOpen$0$org-thoughtcrime-securesms-database-JobDatabase(JobDatabase.java:148)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at org.thoughtcrime.securesms.database.JobDatabase$$ExternalSyntheticLambda7.run(Unknown Source:2)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at java.lang.Thread.run(Thread.java:919)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at org.signal.core.util.concurrent.SignalExecutors$NumberedThreadFactory$1.run(SignalExecutors.java:109)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at [[ ↑↑ Original Trace ↑↑ ]].(:0)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at [[ ↓↓ Inferred Trace ↓↓ ]].(:0)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at Database 'signal.db' corrupted!.(:0)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at [sqlite] FullCode: 267 | ErrorCode: 11 | ExtendedErrorCode: 1 | Message: database disk image is malformed | ExtraMessage: null.(:0)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at Diagnostics results:.(:0)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at  ===== PRAGMA integrity_check (same-connection) =====.(:0)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at ok.(:0)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at .(:0)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at ===== PRAGMA cipher_integrity_check (same-connection) =====.(:0)
06-26 22:57:56.540 25251 25321 E SignalUncaughtException: 	at .(:0)
06-26 22:57:56.548 25251 25336 D StorageSyncHelper: Scheduling a sync. Last sync was 12925113 ms ago.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions