etesync-dav
etesync-dav copied to clipboard
Faulty vcard breaks address book sync
One entry in my address book collection can't be parsed, this in turn breaks the sync of the whole address book.
[2021-03-07 10:08:03 +0100] [24447/Thread-17] [ERROR] An exception occurred during PROPFIND request on '/<user>/foo/': Failed to parse item 'foo.vcf' in '<user>/foo'
Expected
Address book can be synced / accessed, the faulty item is filtered out
Actual
Address book can't be synced at all
Annoying indeed, I thought we fixed it! Though tbh, I'm not sure what's the correct way of dealing with it, because etesync-dav is built on Radicale, and that's the one actually doing the parsing.
Another parsing error:
[2021-03-07 10:44:11 +0100] [30235/Thread-29] [ERROR] An exception occurred during REPORT request on '/<user>/<address book>': Failed to serialize item '<entry>.vcf' from '<user>/<address book>': 'VCARD components must contain at least 1 FN'
I fixed it by first constructing the etesync web url for the faulty contact (to find out which entry it is):
https://pim.etesync.com/pim/contacts/<address book>|<entry>/log
And then changing (or deleting) the contact accordingly on my Android device.