Has been fixed with ical4j/2.0.5 and ical4android/929555e0.
Synchronization Error - Couldn't delete local events
For an .ics feed, for which syncing with ICSDroid has worked fine for some time, I’m now getting a Synchronization Error: “Couldn’t delete local events”. The calendar behaves as the error message indicates: new events are synced to the calendar, but events which are deleted from the .ics file are not deleted from the local Android calendar when syncing.
I’ve already tried to delete and recreate this synchronization in ICSDroid as well as the calendar, I still get this error message. Some other .ics feeds synced with ICSDroid work fine.
As I suspected some entries in the calendar might be the issue, I’ve removed the recent entries entries from the .ics file, and voilà - it syncs again. Just to verify I’ve created an .ics file which only contains these recent events, but than it also syncs fine!? To further narrow down the issue I’ve split the .ics file, and than both parts sync fine.
As the calendar file has grown to a little bit over 4MB (~ 4.2 MB), my suspicion would be there is an issue with .ics files bigger than 4MB?!
Any help or workaround gladly received, thanks!
Samsung Galaxy S5, Android 5.1.1
Sounds like this SQL statement becomes too large for IPC (1 MB) for more than 4 MB of events …
Good catch, seems to be the issue based on the Exception thrown! I’m surprised this hasn’t already surfaced, because a 4MB .ics file isn’t that uncommon?!
I’m neither to deep in programming and my SQL skills are quite rusty, but looking at the statement it seems “sqlUIDs” is the one getting quite large, correct? Could it be a workaround replacing the “sqlUIDs” and “NOT IN” construct by a “LEFT OUTER JOIN” or a “NOT EXISTS”?!
Just my 2 cents…
I have sent an APK over email. Please tell me whether it now works for you.
Unfortunately trying to install the APK you’ve sent ends in “App not installed”.
I’ve sent a test file I’ve created which yields the same behavior ending in a “Couldn’t delete local events” via email.
You need to uninstall the old one and install the new one.
@devvv4ever Wouldn’t I loose my configuration if I uninstall the old one?!
Of course, but it is not possible otherwise to test it… My suggestion: create some QR codes of your URLs and save them. After it scan and open it directly with ICSdroid - there is an intent so that you can directly add an ics file easily.
Now works with 1.5 and your test file.