Clear recipient remap cache on restore.

This commit is contained in:
Cody Henthorne
2025-10-29 10:33:14 -04:00
committed by jeffrey-signal
parent 5640e9c9b8
commit 908ca124f1
2 changed files with 6 additions and 0 deletions

View File

@@ -1286,6 +1286,7 @@ object BackupRepository {
}
RecipientId.clearCache()
SignalDatabase.remappedRecords.clearCache()
AppDependencies.recipientCache.clear()
AppDependencies.recipientCache.clearSelf()
SignalDatabase.threads.clearCache()
@@ -1428,6 +1429,7 @@ object BackupRepository {
SignalDatabase.rawDatabase.forceForeignKeyConstraintsEnabled(true)
}
SignalDatabase.remappedRecords.clearCache()
AppDependencies.recipientCache.clear()
AppDependencies.recipientCache.warmUp()
SignalDatabase.threads.clearCache()

View File

@@ -112,6 +112,10 @@ class RemappedRecordTables internal constructor(context: Context?, databaseHelpe
.run()
}
fun clearCache() {
RemappedRecords.getInstance().resetCache()
}
private fun trimInvalidRecipientEntries(db: SQLiteDatabase) {
val count = db.delete(Recipients.TABLE_NAME)
.where("$OLD_ID IN (SELECT $ID FROM ${RecipientTable.TABLE_NAME})")