android / android/codelab-android-workmanager

disk I/O error (code 4874 SQLITE_IOERR_SHMSIZE): , while compiling: PRAGMA journal_mode

Offen
#284 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Kotlin
Sterne
557
Forks
242
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

**OS**: Android 12
**workmanager**: work-multiprocess:2.5.0
**issue**:My application reported the follow exception, and I can't reach the owner of device. So I can't provide the steps to reproduce this issue.
`disk I/O error (code 4874 SQLITE_IOERR_SHMSIZE): , while compiling: PRAGMA journal_modeat android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:1047)
at android.database.sqlite.SQLiteConnection.executeForString(SQLiteConnection.java:790)
at android.database.sqlite.SQLiteConnection.setJournalMode(SQLiteConnection.java:407)
at android.database.sqlite.SQLiteConnection.setWalModeFromConfiguration(SQLiteConnection.java:337)
at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:260)
at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:205)
at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:505)
at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:206)
at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:198)
at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:919)
at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:899)
at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:763)
at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:752)
at android.database.sqlite.SQLiteOpenHelper.getDatabaseLocked(SQLiteOpenHelper.java:373)
at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:316)
at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper$OpenHelper.getWritableSupportDatabase(FrameworkSQLiteOpenHelper.java:145)
at androidx.sqlite.db.framework.FrameworkSQLiteOpenHelper.getWritableDatabase(FrameworkSQLiteOpenHelper.java:106)
at androidx.room.RoomDatabase.inTransaction(RoomDatabase.java:476)
at androidx.room.RoomDatabase.assertNotSuspendingTransaction(RoomDatabase.java:281)
at androidx.work.impl.model.SystemIdInfoDao_Impl.getWorkSpecIds(SystemIdInfoDao_Impl.java:120)
at androidx.work.impl.background.systemjob.SystemJobScheduler.reconcileJobs(SystemJobScheduler.java:284)
at androidx.work.impl.utils.ForceStopRunnable.cleanUp(ForceStopRunnable.java:199)
at androidx.work.impl.utils.ForceStopRunnable.forceStopRunnable(ForceStopRunnable.java:165)
at androidx.work.impl.utils.ForceStopRunnable.run(ForceStopRunnable.java:102)
at androidx.work.impl.utils.SerialExecutor$Task.run(SerialExecutor.java:91)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:920)
`

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne damit, den gemeldeten Fehler von ForceStopRunnable über SystemJobScheduler und den Datenbank-Öffnungspfad von Room/FrameworkSQLiteOpenHelper nachzuverfolgen, mit Schwerpunkt auf PRAGMA journal_mode unter Android 12 mit WorkManager 2.5.0. Reproduktionsdetails fehlen, ermittle daher zunächst, welche Geräte- oder Speicherbedingungen SQLite_IOERR_SHMSIZE auslösen; abgeschlossen ist die Aufgabe, wenn eine reproduzierbare Ursache und entweder eine verifizierte Behebung oder eine dokumentierte Einschränkung identifiziert wurden.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
android, kotlin, sqlite
Bereich
databases, mobile
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.