From c0ff2a6be36e5c3ef537c0cad4f87fcfa45565fe Mon Sep 17 00:00:00 2001 From: Janne Koschinski <janne@kuschku.de> Date: Wed, 13 Jun 2018 13:51:58 +0200 Subject: [PATCH] Attempt at fixing migration crashes --- .../java/de/kuschku/quasseldroid/Quasseldroid.kt | 5 +++++ .../quasseldroid/persistence/QuasselDatabase.kt | 13 ++++--------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/de/kuschku/quasseldroid/Quasseldroid.kt b/app/src/main/java/de/kuschku/quasseldroid/Quasseldroid.kt index baa4c0bd3..64c357aca 100644 --- a/app/src/main/java/de/kuschku/quasseldroid/Quasseldroid.kt +++ b/app/src/main/java/de/kuschku/quasseldroid/Quasseldroid.kt @@ -29,6 +29,7 @@ import de.kuschku.malheur.CrashHandler import de.kuschku.quasseldroid.dagger.DaggerAppComponent import de.kuschku.quasseldroid.persistence.AccountDatabase import de.kuschku.quasseldroid.persistence.LegacyAccountDatabase +import de.kuschku.quasseldroid.persistence.QuasselDatabase import de.kuschku.quasseldroid.settings.AppearanceSettings import de.kuschku.quasseldroid.settings.SettingsMigration import de.kuschku.quasseldroid.settings.SettingsMigrationManager @@ -156,6 +157,10 @@ class Quasseldroid : DaggerApplication() { ) ).migrate(this) + // Initialize databases to run migrations + QuasselDatabase.Creator.init(this) + AccountDatabase.Creator.init(this) + // Initialize preferences unless already set /* diff --git a/persistence/src/main/java/de/kuschku/quasseldroid/persistence/QuasselDatabase.kt b/persistence/src/main/java/de/kuschku/quasseldroid/persistence/QuasselDatabase.kt index cc98904f8..bfdf400e4 100644 --- a/persistence/src/main/java/de/kuschku/quasseldroid/persistence/QuasselDatabase.kt +++ b/persistence/src/main/java/de/kuschku/quasseldroid/persistence/QuasselDatabase.kt @@ -125,14 +125,10 @@ abstract class QuasselDatabase : RoomDatabase() { @Query("UPDATE filtered SET filtered = :filtered WHERE accountId = :accountId AND bufferId = :bufferId") fun setFiltered(accountId: Long, bufferId: Int, filtered: Int) - @Query( - "SELECT filtered FROM filtered WHERE bufferId = :bufferId AND accountId = :accountId UNION SELECT :default as filtered ORDER BY filtered DESC LIMIT 1" - ) + @Query("SELECT filtered FROM filtered WHERE bufferId = :bufferId AND accountId = :accountId UNION SELECT :default as filtered ORDER BY filtered DESC LIMIT 1") fun get(accountId: Long, bufferId: Int, default: Int): Int - @Query( - "SELECT filtered FROM filtered WHERE bufferId = :bufferId AND accountId = :accountId UNION SELECT :default as filtered ORDER BY filtered DESC LIMIT 1" - ) + @Query("SELECT filtered FROM filtered WHERE bufferId = :bufferId AND accountId = :accountId UNION SELECT :default as filtered ORDER BY filtered DESC LIMIT 1") fun listen(accountId: Long, bufferId: Int, default: Int): LiveData<Int> @Query("SELECT * FROM filtered WHERE accountId = :accountId") @@ -327,9 +323,8 @@ abstract class QuasselDatabase : RoomDatabase() { }, object : Migration(14, 15) { override fun migrate(database: SupportSQLiteDatabase) { - database.execSQL( - "ALTER TABLE message ADD networkId INT DEFAULT 0 NOT NULL;" - ) + database.execSQL("DELETE FROM message;") + database.execSQL("ALTER TABLE message ADD networkId INT DEFAULT 0 NOT NULL;") } } ).build() -- GitLab