re-enable sync after failure due to deletion of a entry of a read-only calendar
I am using multiple calendars from multiple users. My own calendar is writable only by myself. The others are read-only for me and mine read-only for the others.
When I try to generate an appointment in the calendar of somebody else (where I only have read access), the sync fails and is aborted. This may happens by accident. I can then delete this entry locally again and the sync works again.
When I delete a calendar entry of a calendar of somebody else that I have already synced locally before, the sync will fail afterwards and abort, too. In this case, I am wondering how I can fix this locally. How can I clear the local entries that are to be synced?
I cannot regenerate the entry that I have deleted to allow the sync to work again.
How can I make the sync work again without deleting the complete calendar locally?
- Set up a CALDAV server, here: Synology
- Set up two accounts on the server, here: Alice, Bob
- Set up two calendars on the server, here: Alice_cal, Bob_cal
- set read-only access for Alice_cal for Bob and read-only access for Bob_cal for Alice
- add some dates into Bob’s calendar
- Install a calendar app on Alice’ phone, here: acalendar+
- install davdroid on Alice’ phone, add both calendars, use Alice credentials for both
- sync both calendars on Alice’ phone
- use Alice’ phone to delete one of Bob’s calendar entries locally on Alice’ phone
- sync both calendars on Alice’ phone ==> sync fails
Only workaround is, to delete the complete local calendar and do a full resync.
Feature request to solve this: the sync routine should ask the user if he/she wants to destroy the local changes and sync the server version to the local calendar. This would be like an “undelete”.
In one of our next versions the user will have the ability to set a “read only” on the client side. Maybe this helps with your use case