1
0
mirror of https://github.com/vector-im/riotX-android synced 2025-10-06 00:02:48 +02:00

Merge pull request #3341 from vector-im/feature/bma/fix_migration_nightly

Fix a problem with database migration on nightly builds (#3335)
This commit is contained in:
Benoit Marty
2021-05-14 16:32:28 +02:00
committed by GitHub
2 changed files with 13 additions and 2 deletions

View File

@@ -8,7 +8,7 @@ Improvements 🙌:
-
Bugfix 🐛:
-
- Fix a problem with database migration on nightly builds (#3335)
Translations 🗣:
-

View File

@@ -44,7 +44,7 @@ import javax.inject.Inject
class RealmSessionStoreMigration @Inject constructor() : RealmMigration {
companion object {
const val SESSION_STORE_SCHEMA_VERSION = 12L
const val SESSION_STORE_SCHEMA_VERSION = 13L
}
override fun migrate(realm: DynamicRealm, oldVersion: Long, newVersion: Long) {
@@ -62,6 +62,7 @@ class RealmSessionStoreMigration @Inject constructor() : RealmMigration {
if (oldVersion <= 9) migrateTo10(realm)
if (oldVersion <= 10) migrateTo11(realm)
if (oldVersion <= 11) migrateTo12(realm)
if (oldVersion <= 12) migrateTo13(realm)
}
private fun migrateTo1(realm: DynamicRealm) {
@@ -274,4 +275,14 @@ class RealmSessionStoreMigration @Inject constructor() : RealmMigration {
?.addField(SpaceChildSummaryEntityFields.SUGGESTED, Boolean::class.java)
?.setNullable(SpaceChildSummaryEntityFields.SUGGESTED, true)
}
private fun migrateTo13(realm: DynamicRealm) {
Timber.d("Step 12 -> 13")
// Fix issue with the nightly build. Eventually play again the migration which has been included in migrateTo12()
realm.schema.get("SpaceChildSummaryEntity")
?.takeIf { !it.hasField(SpaceChildSummaryEntityFields.SUGGESTED) }
?.addField(SpaceChildSummaryEntityFields.SUGGESTED, Boolean::class.java)
?.setNullable(SpaceChildSummaryEntityFields.SUGGESTED, true)
}
}