CalDAV calendar: msyncd fails when updating event with exceptions

asked 2019-03-15 13:01:13 +0200

Maus gravatar image

updated 2019-03-21 20:11:44 +0200

Update 2019-03-21: a malfunction with interpreting event exceptions has been found by @Damien Caliste. I'm testing a modified package at the moment which addresses part of the aspects of the malfunction.

I experience problems with a CalDAV account. After account creation, an event with lots of exceptions is immediately uploaded back to the server (msyncd logs Uploading exception modification via series update for local modification), but this upload fails with Network request failed with QNetworkReply::NetworkError: 299 and subsequent syncs always fail, because they first try to upload this exception modification again.

This obviously makes this calendar unusable. Interestingly, if I use EAS as backend for this calendar, the sync is also broken. I don't know if the same event causes it to fail, though. So probably the internal representation of events with exceptions may be the problem here.

For the record, I'm on SFOS 3.0.1 at this moment.

edit retag flag offensive close delete

Comments

Two things:

  • in the coming 3.0.2 release, there is a fix for spurious detection of modified exception, so it may solve your issue.
  • I can give a look if you can gather logs, and particularly the ICS data that is tried to be up-synced to the server.
Damien Caliste ( 2019-03-15 13:33:43 +0200 )edit

@Damien Caliste, thank you very much for this information. I've sent you an email with details from the msyncd log. Your help is very much appreciated!

Maus ( 2019-03-15 16:15:28 +0200 )edit

Ok, got it. Thanks. I'm investigating…

Damien Caliste ( 2019-03-15 17:25:26 +0200 )edit

The fact that the event is detected as modified should be addressed by the coming fix in 3.0.2. But I'm concerned by the fact that the "modified" event cannot be uploaded. The actual error is a 412 HTTP error, meaning that the If-Match condition is not fullfilled. Looking at the condition, I'm suprised to see If-Match : http://www.open-xchange.com/etags/1572-123456789, it is supposed to have the form If-Match : "1572-123456789".

Sorry to ask you again, may you give a look in the log, the one when you first sync the account. There should be a Process REPORT response for server path sentence followed by the response from the server with all the ICS data for every events. May I ask you to send me a sample of this reply, particularly the part with the etag but also with the ICS data ? Thank you in advance.

Damien Caliste ( 2019-03-15 17:47:02 +0200 )edit

I've supplied a PROCESS response by email.

Maus ( 2019-03-16 23:02:22 +0200 )edit