Database migration failure on nightly
Description
When opening the latest nightly it instantly crashes.
This didnt happen on the firsf 6.2 nightly.
Environment
- Device model & codename: Pixel 6a, bluejay
- Android version: 14, GrapheneOS
- Aurora Store version: 4.6.2
- Nightly date: 12.10.24
- Account Type: anonymous
- Installation method: apk download
- OS: GrapheneOS (AOSP + hardening)
Logcat
type: crash
osVersion: google/bluejay/bluejay:14/AP2A.240905.003.F1/2024100800:user/release-keys
package: com.aurora.store.nightly:63
process: com.aurora.store.nightly
processUptime: 583 + 39 ms
installer: com.android.packageinstaller
java.lang.IllegalStateException: Migration didn't properly handle: download(com.aurora.store.data.room.download.Download).
Expected:
TableInfo{name='download', columns={displayName=Column{name='displayName', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, isInstalled=Column{name='isInstalled', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, timeRemaining=Column{name='timeRemaining', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, downloadedFiles=Column{name='downloadedFiles', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, targetSdk=Column{name='targetSdk', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, versionCode=Column{name='versionCode', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, speed=Column{name='speed', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, offerType=Column{name='offerType', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, sharedLibs=Column{name='sharedLibs', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, size=Column{name='size', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, progress=Column{name='progress', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, packageName=Column{name='packageName', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=1, defaultValue='undefined'}, iconURL=Column{name='iconURL', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, id=Column{name='id', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, downloadStatus=Column{name='downloadStatus', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, totalFiles=Column{name='totalFiles', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, fileList=Column{name='fileList', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}}, foreignKeys=[], indices=[]}
Found:
TableInfo{name='download', columns={packageName=Column{name='packageName', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=1, defaultValue='undefined'}, versionCode=Column{name='versionCode', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, offerType=Column{name='offerType', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, isInstalled=Column{name='isInstalled', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, displayName=Column{name='displayName', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, iconURL=Column{name='iconURL', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, size=Column{name='size', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, id=Column{name='id', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, downloadStatus=Column{name='downloadStatus', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, progress=Column{name='progress', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, speed=Column{name='speed', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, timeRemaining=Column{name='timeRemaining', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, totalFiles=Column{name='totalFiles', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, downloadedFiles=Column{name='downloadedFiles', type='INTEGER', affinity='3', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, fileList=Column{name='fileList', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}, sharedLibs=Column{name='sharedLibs', type='TEXT', affinity='2', notNull=true, primaryKeyPosition=0, defaultValue='undefined'}}, foreignKeys=[], indices=[]}
at c2.q.f(SourceFile:75)
at h2.d$b.onUpgrade(SourceFile:15)
at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:422)
at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:323)
at h2.d$b.e(SourceFile:5)
at h2.d$b.g(SourceFile:64)
at h2.d$b.b(SourceFile:24)
at h2.d.O(SourceFile:10)
at c2.o.b(SourceFile:5)
at c2.o.w(SourceFile:9)
at e2.b.b(SourceFile:12)
at s3.h.call(SourceFile:119)
at androidx.room.a$a$a.r(SourceFile:80)
at J4.a.o(SourceFile:9)
at c5.M.run(SourceFile:111)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
at java.lang.Thread.run(Thread.java:1012)
Suppressed: h5.h: [F0{Cancelling}@42e84, Dispatchers.Main]