Carddav serverside deletions not reflected

asked 2015-09-29 17:55:34 +0200

Arie gravatar image

Now that caldav is finally working without shifting times (thanks for that!), I thought I'd give carddav another try.

The Sailfish version is 1.1.9.28. The server is a self-hosted davical instance, which has been tested to work with KOrganizer and KAddressbook among others.

The carddav sync is partly succesful: changes made to existing contacts are propagated in both directions. Also, contacts that are deleted on the phone are deleted from the server.

However, deletions on the server side are not propagated to the phone at all. Is this a bug, or a known limitation?

If logs from the webserver and/or the msyncd on the phone are useful, please let me know.

edit retag flag offensive close delete

Comments

Yes, those logs would definitely be useful. Server-side deletions should definitely be respected.

Note, however, that only the server-side data will be deleted from the phone, in the case where local-device data for that contact exists also. In that case, after the first sync, an "aggregate" contact will exist (consisting of the local data plus the server-synced data). After a remote removal, the server-synced data will be removed, however the local data will remain.

If no local data exists, then the entire contact should be removed when the server-synced data is removed due to the remote deletion.

Cheers, Chris.

chris.adams ( 2015-10-01 12:05:44 +0200 )edit

Hi Chris, I have sent you the logs.

Thanks for the explanation. Is such local-device data ever created if the contact data comes from carddav originally?

The full situation is as follows: I have many contacts on my phone that were imported unintentionally at some point from someone else's carddav list (I guess I must have forgotten to uncheck the "carddav" setting when creating the relevant account; I just wanted to view this person's caldav calendars). These contacts were later apparently uploaded by the phone to my own carddav list. This was already very unhelpful, but now deleting these contacts from the server does not remove them from the phone, perhaps due to this local-device data that you refer to.

Arie ( 2015-10-01 13:31:51 +0200 )edit

Not automatically. Some facets of the contact data will be stored locally if changed (e.g., if you set a contact as a favourite) but otherwise should not be. If the "pure-remote" data is not being removed when the account is removed, then this must be a bug in our stack somewhere. Any logs or database dumps you can provide would be useful - send them to chris dot adams at jolla dot com and I can investigate further.

In regards to your comment about carddav being enabled accidentally - most likely this is due to another bug in our plugin, see https://bugs.merproject.org/show_bug.cgi?id=1364 and https://together.jolla.com/question/109564/fatal-bug-cardav-is-in-use-even-it-is-disabled/ - the fixes should be released soon.

chris.adams ( 2015-10-09 09:13:47 +0200 )edit