Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit fd1404ba authored by Fahim Salam Chowdhury's avatar Fahim Salam Chowdhury 👽
Browse files

Fix database migration issue

autoMigrate db from v10 to v11 try to execute the following:

```java
database.execSQL("ALTER TABLE `service` ADD COLUMN IF NOT EXISTS `authState` TEXT DEFAULT NULL")
database.execSQL("ALTER TABLE `service` ADD COLUMN `addressBookAccountType` TEXT DEFAULT NULL")
database.execSQL("ALTER TABLE `service` ADD COLUMN `accountType` TEXT DEFAULT NULL")
```

These collumn are already added in v6, so the app upgrade failed. This
commit move to manual migration.
parent 08ff5d78
Loading
Loading
Loading
Loading
Loading
+8 −2
Original line number Diff line number Diff line
@@ -37,8 +37,7 @@ import javax.inject.Singleton
    WebDavDocument::class,
    WebDavMount::class
], exportSchema = true, version = 11, autoMigrations = [
    AutoMigration(from = 9, to = 10),
    AutoMigration(from = 10, to = 11)
    AutoMigration(from = 9, to = 10)
])
@TypeConverters(Converters::class)
abstract class AppDatabase: RoomDatabase() {
@@ -80,6 +79,13 @@ abstract class AppDatabase: RoomDatabase() {
        // migrations

        val migrations: Array<Migration> = arrayOf(
            object : Migration(10, 11) {
                override fun migrate(database: SupportSQLiteDatabase) {
                    database.execSQL("CREATE TABLE IF NOT EXISTS `webdav_document` (`id` INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, `mountId` INTEGER NOT NULL, `parentId` INTEGER, `name` TEXT NOT NULL, `isDirectory` INTEGER NOT NULL, `displayName` TEXT, `mimeType` TEXT, `eTag` TEXT, `lastModified` INTEGER, `size` INTEGER, `mayBind` INTEGER, `mayUnbind` INTEGER, `mayWriteContent` INTEGER, `quotaAvailable` INTEGER, `quotaUsed` INTEGER, FOREIGN KEY(`mountId`) REFERENCES `webdav_mount`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE , FOREIGN KEY(`parentId`) REFERENCES `webdav_document`(`id`) ON UPDATE NO ACTION ON DELETE CASCADE )")
                    database.execSQL("CREATE UNIQUE INDEX IF NOT EXISTS `index_webdav_document_mountId_parentId_name` ON `webdav_document` (`mountId`, `parentId`, `name`)")
                }
            },

            object : Migration(8, 9) {
                override fun migrate(db: SupportSQLiteDatabase) {
                    db.execSQL("CREATE TABLE syncstats (" +