Baseflow / Baseflow/flutter_cache_manager
SqfliteDatabaseException attempt to write a readonly database (code 1032 SQLITE_READONLY_DBMOVED[1032]))
- Lenguaje dominante
- Dart
- Estrellas
- 809
- Forks
- 510
- Merge medio
- 6 min
- PR fusionados (30 d)
- 1
Descripción
## 🐛 Bug Report
When using the flutter_cache_manager within Dart 2.15 within Flutter 2 I get sometime this Fail with SQLite.
Error:
SqfliteDatabaseException
DatabaseException(attempt to write a readonly database (code 1032 SQLITE_READONLY_DBMOVED[1032])) sql 'UPDATE cacheObject SET url = ?, key = ?, relativePath = ?, eTag = ?, validTill = ?, touched = ?, length = ?, _id = ? WHERE _id = ?' args [https://asdf.de/img/start_aktion-1_mobil-opti...., https://asdf.de/img/start_aktion-1_mobil-opti...., 57dcb0d0-79e7-11ec-bb36-436c12859413.png, W/"16304a-17dc2bf19ff", 1643284306013, 1642679987235, 1454154, 1, 1]
### Expected behavior
I would like to have a non throwing Error behaviour with the Cache Manager.
### Reproduction steps
Call within InitState method something like this (async):
mainProvider.retrieveStartPageData(mta).then((value) async {
if (value != null) {
if (mainProvider.myHi.length > 0) {
for (var headerImage in mainProvider.myHi) {
await DefaultCacheManager().getSingleFile(
'${Env.value!.imgUrl}${headerImage.imageMobile}');
}
}
}
});
### Configuration
Dart: 2.15
Flutter 2.5
**Platform:**
- [x] :iphone: iOS
- [x] :robot: Android
Guía de contribución
Línea de trabajo
Start by reproducing the async DefaultCacheManager().getSingleFile calls from initState on iOS and Android with the stated Dart and Flutter versions, then trace the SQLite update that emits SQLITE_READONLY_DBMOVED. Done means the intermittent failure is understood and the cache manager no longer throws in the reported scenario, with regression coverage added.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- dart, flutter, sqlite
- Área
- databases, mobile-dev
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 35/100