From e94e4da90427848ddd455021e43e530b9d7fd794 Mon Sep 17 00:00:00 2001 From: James Rich <2199651+jamesarich@users.noreply.github.com> Date: Sat, 7 Feb 2026 13:20:26 -0600 Subject: [PATCH] feat(database): Enable Write-Ahead Logging for Room DB (#4499) Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com> --- .../main/kotlin/org/meshtastic/core/database/DatabaseManager.kt | 2 ++ .../kotlin/org/meshtastic/core/database/MeshtasticDatabase.kt | 1 + 2 files changed, 3 insertions(+) diff --git a/core/database/src/main/kotlin/org/meshtastic/core/database/DatabaseManager.kt b/core/database/src/main/kotlin/org/meshtastic/core/database/DatabaseManager.kt index 27f1a26fb..3e79a893b 100644 --- a/core/database/src/main/kotlin/org/meshtastic/core/database/DatabaseManager.kt +++ b/core/database/src/main/kotlin/org/meshtastic/core/database/DatabaseManager.kt @@ -20,6 +20,7 @@ import android.app.Application import android.content.Context import android.content.SharedPreferences import androidx.room.Room +import androidx.room.RoomDatabase import co.touchlab.kermit.Logger import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.SupervisorJob @@ -272,6 +273,7 @@ private fun anonymizeDbName(name: String): String = private fun buildRoomDb(app: Application, dbName: String): MeshtasticDatabase = Room.databaseBuilder(app.applicationContext, MeshtasticDatabase::class.java, dbName) + .setJournalMode(RoomDatabase.JournalMode.WRITE_AHEAD_LOGGING) .fallbackToDestructiveMigration(false) .build() diff --git a/core/database/src/main/kotlin/org/meshtastic/core/database/MeshtasticDatabase.kt b/core/database/src/main/kotlin/org/meshtastic/core/database/MeshtasticDatabase.kt index 786a50ee9..6547d36bd 100644 --- a/core/database/src/main/kotlin/org/meshtastic/core/database/MeshtasticDatabase.kt +++ b/core/database/src/main/kotlin/org/meshtastic/core/database/MeshtasticDatabase.kt @@ -115,6 +115,7 @@ abstract class MeshtasticDatabase : RoomDatabase() { companion object { fun getDatabase(context: Context): MeshtasticDatabase = Room.databaseBuilder(context.applicationContext, MeshtasticDatabase::class.java, "meshtastic_database") + .setJournalMode(RoomDatabase.JournalMode.WRITE_AHEAD_LOGGING) .fallbackToDestructiveMigration(false) .build() }