This repository was archived by the owner on Jun 9, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 13
This repository was archived by the owner on Jun 9, 2025. It is now read-only.
Error: android.database.CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0 #202
Copy link
Copy link
Labels
bugSomething isn't workingSomething isn't working
Description
Guess it's this call:
| if (!cursor.isNull(0)) // Events.STATUS != null |
Discussed in bitfireAT/davx5-ose#1447
Originally posted by renyuneyun May 7, 2025
Not sure whether it's DAVx5 causing this error, the server (Nextcloud) causing it or my Android OS causing it, so I'm posting it as a discussion first.
I get this error for two of my calendar collections, from time to time. But their contents are generally updated after synchronization.
NOTIFICATION TIME
Local time: 2025-05-07T14:50:25+01:00
UTC: 2025-05-07T13:50:25Z
SYNCHRONIZATION INFO
Account: Account {name=MY_EMAIL_ADDRESS, type=bitfire.at.davdroid}
Authority: com.android.calendar
android.database.CursorIndexOutOfBoundsException: Index 0 requested, with a size of 0
at android.database.AbstractCursor.checkPosition(AbstractCursor.java:535)
at android.database.AbstractWindowedCursor.checkPosition(AbstractWindowedCursor.java:139)
at android.database.AbstractWindowedCursor.isNull(AbstractWindowedCursor.java:95)
at android.database.CursorWrapper.isNull(CursorWrapper.java:187)
at at.bitfire.ical4android.AndroidEvent.update(AndroidEvent.kt:52)
at at.bitfire.davdroid.sync.CalendarSyncManager.processVEvent$lambda$14(CalendarSyncManager.kt:26)
at at.bitfire.davdroid.sync.CalendarSyncManager.$r8$lambda$-yysUu1mnb5YKsSp5laPGSXWQjM(CalendarSyncManager.kt:1)
at at.bitfire.davdroid.sync.CalendarSyncManager$$ExternalSyntheticLambda10.invoke(R8$$SyntheticClass:13)
at at.bitfire.davdroid.sync.SyncException$Companion.wrapWithLocalResource(SyncException.kt:6)
at at.bitfire.davdroid.sync.CalendarSyncManager.processVEvent(CalendarSyncManager.kt:140)
at at.bitfire.davdroid.sync.CalendarSyncManager.downloadRemote$lambda$11$lambda$10$lambda$9(CalendarSyncManager.kt:111)
at at.bitfire.davdroid.sync.CalendarSyncManager.$r8$lambda$xBRNK6FZsxb0c35R_GMkb1qDT8A(CalendarSyncManager.kt:1)
at at.bitfire.davdroid.sync.CalendarSyncManager$$ExternalSyntheticLambda4.invoke(R8$$SyntheticClass:5)
at at.bitfire.davdroid.sync.SyncException$Companion.wrapWithRemoteResource(SyncException.kt:6)
at at.bitfire.davdroid.sync.CalendarSyncManager.downloadRemote$lambda$11$lambda$10(CalendarSyncManager.kt:22)
at at.bitfire.davdroid.sync.CalendarSyncManager.$r8$lambda$is9u8vJ7VzS62N-UVw4ofat62j4(CalendarSyncManager.kt:1)
at at.bitfire.davdroid.sync.CalendarSyncManager$$ExternalSyntheticLambda0.onResponse(R8$$SyntheticClass:3)
at at.bitfire.dav4jvm.Response$Companion.parse(Response.kt:320)
at at.bitfire.dav4jvm.DavResource.processMultiStatus$parseMultiStatus(DavResource.kt:51)
at at.bitfire.dav4jvm.DavResource.processMultiStatus(DavResource.kt:18)
at at.bitfire.dav4jvm.DavResource.processMultiStatus(DavResource.kt:9)
at at.bitfire.dav4jvm.DavCalendar.multiget(DavCalendar.kt:69)
at at.bitfire.dav4jvm.DavCalendar.multiget$default(DavCalendar.kt:12)
at at.bitfire.davdroid.sync.CalendarSyncManager.downloadRemote$lambda$11(CalendarSyncManager.kt:18)
at at.bitfire.davdroid.sync.CalendarSyncManager.$r8$lambda$3MqIM-UjL7npA99FHS230pOYtbQ(CalendarSyncManager.kt:1)
at at.bitfire.davdroid.sync.CalendarSyncManager$$ExternalSyntheticLambda1.invoke(R8$$SyntheticClass:5)
at at.bitfire.davdroid.sync.SyncException$Companion.wrapWithRemoteResource(SyncException.kt:6)
at at.bitfire.davdroid.sync.CalendarSyncManager.downloadRemote(CalendarSyncManager.kt:54)
at at.bitfire.davdroid.sync.SyncManager$syncRemote$1$download$1.invokeSuspend(SyncManager.kt:14)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:9)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:115)
at kotlinx.coroutines.EventLoopImplBase.processNextEvent(EventLoop.common.kt:77)
at kotlinx.coroutines.BuildersKt.runBlocking(Unknown Source:99)
at kotlinx.coroutines.BuildersKt.runBlocking$default(Unknown Source:3)
at at.bitfire.davdroid.sync.SyncManager.syncRemote(SyncManager.kt:12)
at at.bitfire.davdroid.sync.SyncManager.performSync(SyncManager.kt:424)
at at.bitfire.davdroid.sync.CalendarSyncer.syncCollection(CalendarSyncer.kt:10)
at at.bitfire.davdroid.sync.CalendarSyncer.syncCollection(CalendarSyncer.kt:1)
at at.bitfire.davdroid.sync.Syncer.syncCollectionContents$davx5_ose_4_4_9_oseRelease(Syncer.kt:44)
at at.bitfire.davdroid.sync.Syncer.sync$davx5_ose_4_4_9_oseRelease(Syncer.kt:42)
at at.bitfire.davdroid.sync.Syncer.invoke(Syncer.kt:144)
at at.bitfire.davdroid.sync.worker.BaseSyncWorker$doSyncWork$2.invokeSuspend$lambda$0(BaseSyncWorker.kt:1)
at at.bitfire.davdroid.sync.worker.BaseSyncWorker$doSyncWork$2.$r8$lambda$MnrEU1_WtQZTTPjmMRztfG3Y7fo(BaseSyncWorker.kt:1)
at at.bitfire.davdroid.sync.worker.BaseSyncWorker$doSyncWork$2$$ExternalSyntheticLambda0.invoke(R8$$SyntheticClass:3)
at kotlinx.coroutines.InterruptibleKt$runInterruptible$2.invokeSuspend(Interruptible.kt:58)
at kotlinx.coroutines.InterruptibleKt$runInterruptible$2.invoke(Interruptible.kt:13)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndspatched(Undispatched.kt:17)
at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:45)
at kotlinx.coroutines.InterruptibleKt.runInterruptible$default(Interruptible.kt:9)
at at.bitfire.davdroid.sync.worker.BaseSyncWorker$doSyncWork$2.invokeSuspend(BaseSyncWorker.kt:332)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:9)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:115)
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)
LOCAL RESOURCE
AndroidEvent(calendar=at.bitfire.davdroid.resource.LocalCalendar@ac202e1, id=285, event=Event(uid=SOME_UID, sequence=1, userAgents=[], recurrenceId=null, summary=SUMMARY_REMOVED, location=null, url=null, description=null, color=null, dtStart=DTSTART;TZID=Europe/London:20250512T110000
, dtEnd=DTEND;TZID=Europe/London:20250512T120000
, duration=null, rRules=[], exRules=[], rDates=[], exDates=[], exceptions=[], classification=null, status=null, opaque=true, organizer=null, attendees=[], alarms=[], lastModified=LAST-MODIFIED:20250430T091500Z
, categories=[], unknownProperties=[CREATED:20250428T175101Z
, X-MOZ-GENERATION:2
]))
REMOTE RESOURCE
https://MY_NEXT_CLOUD_SERVER/remote.php/dav/calendars/MY_USERNAME/CALENDAR_NAME/SOME_UID.ics
SYSTEM INFORMATION
Android version: 15 (PKR110_15.0.0.705(CN01))
Device: OnePlus PKR110 (OP60EBL1)
Locale(s): [zh_CN]
Time zone: Europe/London
Internal memory (/data): 120 GB free of 237 GB
App standby bucket: exempted (very good)
App exempted from power saving: yes (good)
System in power-save mode: no
System-wide synchronization: automatically
CONNECTIVITY
☒ wlan0
- [ Transports: WIFI Capabilities: NOT_METERED INTERNET NOT_RESTRICTED TRUSTED NOT_VPN VALIDATED NOT_ROAMING FOREGROUND NOT_CONGESTED NOT_SUSPENDED NOT_VCN_MANAGED NOT_BANDWIDTH_CONSTRAINED LinkUpBandwidth>=73764Kbps LinkDnBandwidth>=67686Kbps TransportInfo: <SSID: <unknown ssid>, BSSID: 02:00:00:00:00:00, MAC: 02:00:00:00:00:00, IP: /192.168.4.200, Security type: 2, Supplicant state: COMPLETED, Wi-Fi standard: 11ac, RSSI: -40, Link speed: 360Mbps, Tx Link speed: 360Mbps, Max Supported Tx Link speed: 400Mbps, Rx Link speed: 400Mbps, Max Supported Rx Link speed: 400Mbps, Frequency: 5785MHz, Net ID: -1, Metered hint: false, score: 60, isUsable: true, CarrierMerged: false, SubscriptionId: -1, IsPrimary: -1, Trusted: true, Restricted: false, Ephemeral: false, OEM paid: false, OEM private: false, OSU AP: false, FQDN: <none>, Provider friendly name: <none>, Requesting package name: <none><none>MLO Information: , Is TID-To-Link negotiation supported by the AP: false, AP MLD Address: <none>, AP MLO Link Id: <none>, AP MLO Affiliated links: <none>, Vendor Data: <none>> SignalStrength: -40 UnderlyingNetworks: Null]
- DNS: 180.76.76.76, 223.5.5.5
☐ rmnet_data7
- [ Transports: CELLULAR Capabilities: IMS NOT_METERED TRUSTED NOT_VPN VALIDATED NOT_ROAMING FOREGROUND NOT_CONGESTED NOT_SUSPENDED NOT_VCN_MANAGED MMTEL NOT_BANDWIDTH_CONSTRAINED LinkUpBandwidth>=15000Kbps LinkDnBandwidth>=30000Kbps Specifier: <TelephonyNetworkSpecifier [mSubId = 2]> SubscriptionIds: {2} UnderlyingNetworks: Null]
- DNS:
☐ rmnet_data8
- [ Transports: CELLULAR Capabilities: IMS NOT_METERED TRUSTED NOT_VPN VALIDATED FOREGROUND NOT_CONGESTED NOT_SUSPENDED NOT_VCN_MANAGED MMTEL NOT_BANDWIDTH_CONSTRAINED LinkUpBandwidth>=18000Kbps LinkDnBandwidth>=47000Kbps Specifier: <TelephonyNetworkSpecifier [mSubId = 1]> SubscriptionIds: {1} UnderlyingNetworks: Null]
- DNS:
Data saver: disabled
CONFIGURATION
Notifications:
- sync isBlocked=false
* syncProblems: importance=3
* syncIoErrors: importance=1
* syncWarnings: importance=2
- status: importance=2
- general: importance=3
- debug: importance=4
Permissions:
- ACCESS_NETWORK_STATE: granted
- ACCESS_WIFI_STATE: granted
- INTERNET: granted
- POST_NOTIFICATIONS: granted
- READ_SYNC_SETTINGS: granted
- READ_SYNC_STATS: granted
- WRITE_SYNC_SETTINGS: granted
- RECEIVE_BOOT_COMPLETED: granted
- REQUEST_IGNORE_BATTERY_OPTIMIZATIONS: granted
- READ_CONTACTS: granted
- WRITE_CONTACTS: granted
- READ_CALENDAR: granted
- WRITE_CALENDAR: granted
- ACCESS_COARSE_LOCATION: granted
- ACCESS_FINE_LOCATION: granted
- ACCESS_BACKGROUND_LOCATION: granted
- WAKE_LOCK: granted
- FOREGROUND_SERVICE: granted
- org.dmfs.permission.READ_TASKS: denied
- org.dmfs.permission.WRITE_TASKS: denied
- org.tasks.permission.READ_TASKS: denied
- org.tasks.permission.WRITE_TASKS: denied
- at.techbee.jtx.permission.READ: granted
- at.techbee.jtx.permission.WRITE: granted
- at.bitfire.davdroid.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION: granted
(I chose the most relevant parts, with some sensitive information removed. Can provide further information if required.)
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working
Type
Projects
Status
Done