`SQLiteBlobTooBigException` When Opening Large Directory
- Dominant language
- Kotlin
- Stars
- 5.6k
- Forks
- 2k
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 92
Description
### ⚠️ Before posting ⚠️
- [x] This is a **bug**, not a question or an enhancement.
- [x] I've [searched for similar issues](https://github.com/nextcloud/android/issues) and didn't find a duplicate.
- [x] I've written a clear and descriptive title for this issue, not just "Bug" or "Crash".
- [x] I agree to follow Nextcloud's [Code of Conduct](https://nextcloud.com/contribute/code-of-conduct/).
### Steps to reproduce
Ouvrir un répertoire avec l'applicition sur eOs
### Expected behaviour
Liste du contenu
### Actual behaviour
### Cause of error
```java
Exception in thread "main" android.database.sqlite.SQLiteBlobTooBigException: Row too big to fit into CursorWindow requiredPos=549, totalRows=550
at android.database.sqlite.SQLiteConnection.nativeExecuteForCursorWindow(Native Method)
at android.database.sqlite.SQLiteConnection.executeForCursorWindow(SQLiteConnection.java:1037)
at android.database.sqlite.SQLiteSession.executeForCursorWindow(SQLiteSession.java:862)
at android.database.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:62)
at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:153)
at android.database.sqlite.SQLiteCursor.onMove(SQLiteCursor.java:123)
at android.database.AbstractCursor.moveToPosition(AbstractCursor.java:269)
at android.database.AbstractCursor.moveToNext(AbstractCursor.java:301)
at androidx.room.driver.SupportSQLiteStatement$SupportAndroidSQLiteStatement.step(SupportSQLiteStatement.android.kt:183)
at com.nextcloud.client.database.dao.FileDao_Impl.getAllFiles$lambda$9(FileDao_Impl.kt:3547)
at com.nextcloud.client.database.dao.FileDao_Impl.$r8$lambda$3oubpNTR9NBdykE-rY3esJkk2D4(Unknown Source:0)
at com.nextcloud.client.database.dao.FileDao_Impl$$ExternalSyntheticLambda0.invoke(D8$$SyntheticClass:0)
at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1$invokeSuspend$$inlined$internalPerform$1.invokeSuspend(DBUtil.kt:68)
at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1$invokeSuspend$$inlined$internalPerform$1.invoke(Unknown Source:8)
at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1$invokeSuspend$$inlined$internalPerform$1.invoke(Unknown Source:4)
at androidx.room.driver.SupportSQLiteConnectionPool.useConnection(SupportSQLiteConnectionPool.android.kt:42)
at androidx.room.RoomConnectionManager.useConnection(RoomConnectionManager.android.kt:126)
at androidx.room.RoomDatabase.useConnection$room_runtime_release(RoomDatabase.android.kt:593)
at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1.invokeSuspend(DBUtil.android.kt:247)
at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1.invoke(Unknown Source:8)
at androidx.room.util.DBUtil__DBUtil_androidKt$performBlocking$1.invoke(Unknown Source:4)
at androidx.room.coroutines.RunBlockingUninterruptible_androidKt$runBlockingUninterruptible$1$1.invokeSuspend(RunBlockingUninterruptible.android.kt:52)
at androidx.room.coroutines.RunBlockingUninterruptible_androidKt$runBlockingUninterruptible$1$1.invoke(Unknown Source:8)
at androidx.room.coroutines.RunBlockingUninterruptible_androidKt$runBlockingUninterruptible$1$1.invoke(Unknown Source:4)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startCoroutineUndispatched(Undispatched.kt:27)
at kotlinx.coroutines.CoroutineStart.invoke(CoroutineStart.kt:90)
at kotlinx.coroutines.AbstractCoroutine.start(AbstractCoroutine.kt:123)
at kotlinx.coroutines.BuildersKt__Builders_commonKt.launch(Builders.common.kt:52)
at kotlinx.coroutines.BuildersKt.launch(Unknown Source:1)
at androidx.room.coroutines.RunBlockingUninterruptible_androidKt$runBlockingUninterruptible$1.invokeSuspend(RunBlockingUninterruptible.android.kt:51)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:277)
at kotlinx.coroutines.BlockingCoroutine.joinBlocking(Builders.kt:95)
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking(Builders.kt:69)
at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source:1)
at kotlinx.coroutines.BuildersKt__BuildersKt.runBlocking$default(Builders.kt:48)
at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source:1)
at androidx.room.coroutines.RunBlockingUninterruptible_androidKt.runBlockingUninterruptible(RunBlockingUninterruptible.android.kt:45)
at androidx.room.util.DBUtil__DBUtil_androidKt.performBlocking(DBUtil.android.kt:69)
at androidx.room.util.DBUtil.performBlocking(Unknown Source:1)
at com.nextcloud.client.database.dao.FileDao_Impl.getAllFiles(FileDao_Impl.kt:3482)
at com.owncloud.android.datamodel.FileDataStorageManager.getAllFiles(FileDataStorageManager.java:2791)
at com.owncloud.android.datamodel.FileDataStorageManager.filter(FileDataStorageManager.java:2878)
at com.owncloud.android.ui.adapter.OCFileListAdapter.swapDirectory(OCFileListAdapter.java:869)
at com.owncloud.android.ui.fragment.OCFileListFragment.listDirectory(OCFileListFragment.java:1623)
at com.owncloud.android.ui.fragment.OCFileListFragment.listDirectory(OCFileListFragment.java:1572)
at com.owncloud.android.ui.fragment.OCFileListFragment.browseToFolder(OCFileListFragment.java:1344)
at com.owncloud.android.ui.fragment.OCFileListFragment.folderOnItemClick(OCFileListFragment.java:1250)
at com.owncloud.android.ui.fragment.OCFileListFragment.onItemClicked(OCFileListFragment.java:1330)
at com.owncloud.android.ui.adapter.OCFileListDelegate.setItemLayoutOnClickListeners$lambda$5(OCFileListDelegate.kt:299)
at com.owncloud.android.ui.adapter.OCFileListDelegate.$r8$lambda$hwP-9KJ9Z0FnhKAofYTYbJspjRc(Unknown Source:0)
at com.owncloud.android.ui.adapter.OCFileListDelegate$$ExternalSyntheticLambda0.onClick(D8$$SyntheticClass:0)
at android.view.View.performClick(View.java:7931)
at android.view.View.performClickInternal(View.java:7908)
at android.view.View.-$$Nest$mperformClickInternal(Unknown Source:0)
at android.view.View$PerformClick.run(View.java:30990)
at android.os.Handler.handleCallback(Handler.java:959)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loopOnce(Looper.java:232)
at android.os.Looper.loop(Looper.java:317)
at android.app.ActivityThread.main(ActivityThread.java:8592)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:580)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:878)
```
### App information
* ID: `com.nextcloud.client`
* Version: `30320390`
* Build flavor: `generic`
### Device information
* Brand: `Fairphone`
* Device: `FP4`
* Model: `FP4`
* Id: `AP2A.240905.003`
* Product: `FP4eea`
### Firmware
* SDK: `34`
* Release: `14`
* Incremental: `eng.root.20250109.094204`
### Android version
eOs pas android
### Device brand and model
fairphone FP4
### Stock or custom OS?
Stock
### Nextcloud android app version
cf. message
### Nextcloud server version
cf. message
### Using a reverse proxy?
No
### Android logs
_No response_
### Server error logs
```bash
```
### Additional information
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.