CardDAV sync fails with error 409

Tracked by Jolla

asked 2017-07-06 02:35:40 +0200

luen gravatar image

updated 2017-07-06 02:40:56 +0200

When I synchronized my cardDAV account, it used to fail and carddav-client wrote the following in the log:

[W] CardDav::upsyncResponse:1128 - void CardDav::upsyncResponse() error: 299 ( 409 )
[W] Syncer::cardDavError:290 - CardDAV sync finished with error: 409 purging state data for account: 24
[C] CardDavClient::syncFinished:142 - CardDAV sync failed: 401 ""

As I understand it, 409 refers to the HTTP response code, and 409 means Conflict:

Indicates that the request could not be processed because of conflict in the request, such as an edit conflict between multiple simultaneous updates.

  • buteo-sync-plugin-carddav version: 0.0.24-1.15.1 (SFOS 2.0.5.6 on FP2).
  • On the server I run Baikal 0.4.6 (with sabre/dav 3.1.4)

I could find the conflicting contact by checking the server logs (it attempted PUT /dav.php/addressbooks/erik/default/<CONTACT ID>.vcf/<ANOTHER ID>.vcf but got 409), so I removed the contact from the addressbook in Sailfish, but now I instead get the following sync error:

[W] Syncer::continueSync:166 - void Syncer::continueSync(const QList<QtContacts::QContact>&, const QList<QtContacts::QContact>&, const QList<QtContacts::QContact>&) no contact id specified for contact with guid "24:AB:/dav.php/addressbooks/erik/default/<CONTACT ID>.vcf:<CONTACT ID>" from account 24
[W] Syncer::cardDavError:290 - CardDAV sync finished with error: 0 purging state data for account: 24
[C] CardDavClient::syncFinished:142 - CardDAV sync failed: 401 ""
edit retag flag offensive close delete

Comments

It has something to do with the format uses by Sailfish, I think it is in the date format.

EDIT: Solved it in my case, Sailfish uses .vcf format version 2.1, Nextcloud needs 3.0 or higher. Converted it and it worked.

BonoNL ( 2019-11-14 22:22:25 +0200 )edit