We have moved to a new Sailfish OS Forum. Please start new discussions there.
159

All dates shifted by one hour in calendar after updating to 1.1.0.38 [released]

Tracked by Jolla (In progress)

asked 2014-10-24 19:06:40 +0200

rha gravatar image

updated 2015-10-23 22:25:41 +0200

martinrusler gravatar image

After having updated to 1.1.0.38 all dates in my caldav synched calendars have shifted by one hour (everything is one hour later now). This seems to happen after the caldav sync runs for the first time after the upgrade. I have verified this multiple times (doing a factory reset in between and recreating the accounts) ... when still on 1.0.8.21 the times are correct and after the upgrade they're wrong.

This seems to only affect caldav synced calendars. BTW, there is a small difference between using the native buteo sync plugin and sync-evolution here. When using sync-evolution for caldav only new appointments synced in after the upgrade are affected.

BTW, I am using owncloud 7.0.2 on the server side.

Some more information: This seems to be related to the timezone used on the device somehow. I am using Germany/Berlin usually ( which is at UTC+1 currently but will switch to +2 this weekend). If I switch the device to a timezone that doesn't have any DST and is constantly at UTC+2 it seems new events appear with the correct times.

EDIT (2014-11-10): This really seems to be related to DST, now that we switched to "winter time" recently, the times of my appointments appear to be correct in the calendar. Weird.

EDIT(2015-04-23): As others pointed out below, the issue is back since we changed back to DST in March.

UPDATE (2015-05-17): Still present with 1.1.4.29

UPDATE (2015-06-16): Still present with 1.1.6.27

UPDATE (2015-07-15): Still present with 1.1.7.24

UPDATE (2015-09-24): Seems to be fixed with 1.1.9.28!

UPDATE (2015-10-23): Seems to be re-introduced in 2.0.0.10 Problem is not on Jolla side, see comment below -martinrusler

edit retag flag offensive reopen delete

The question has been closed for the following reason "released in a software update" by nthn
close date 2016-01-24 14:54:11.874761

Comments

2

Same here (Paris timezone)

damourti ( 2014-10-25 12:38:50 +0200 )edit

My calendar was empty after the upgrade. All entries were gone only the birthday events were still there. =(

FloR707 ( 2014-10-25 13:06:56 +0200 )edit

Humm, actually I can see on my Owncloud that only the first event created was shifted by 1hour on the Jolla side only, not the others...weird

damourti ( 2014-10-25 15:10:42 +0200 )edit
1

BTW, it seems that all the events coming in from the owncloud server have this VTIMEZONE section in them:

    BEGIN:VTIMEZONE
    TZID:Europe/Berlin
    BEGIN:STANDARD
    DTSTART:19671029T030000
    RRULE:FREQ=MONTHLY;INTERVAL=12;BYDAY=-1SU
    TZOFFSETFROM:+0200
    TZOFFSETTO:+0100
    TZNAME:CET
    END:STANDARD
    BEGIN:DAYLIGHT
    DTSTART:19870329T020000
    RRULE:FREQ=MONTHLY;INTERVAL=12;BYDAY=-1SU
    TZOFFSETFROM:+0100
    TZOFFSETTO:+0200
    TZNAME:CEST
    END:DAYLIGHT
    END:VTIMEZONE

Maybe the phone (since the 1.1.0.38 update) is just misinterpreting that?

rha ( 2014-10-25 15:18:46 +0200 )edit

@rha How can I get the code of events like you did?

schmittlauch ( 2014-10-25 17:06:05 +0200 )edit

9 Answers

Sort by » oldest newest most voted
31

answered 2015-06-10 20:24:11 +0200

lenggi gravatar image

updated 2015-06-26 10:26:52 +0200

The problem is located in the part that parses the timezone definition provided by the caldav server. I have created a pull request that tries to solve the issue: https://github.com/mer-packages/kcalcore/pull/9

It is now pending for review/feedback/approval by Jolla/Mer community. I hope it really fixes the problem and makes it in one of the upcoming releases.

EDIT 26/06/2015 PR has been merged. Thanks, @chris.adams! Hopefully, we see it in one of the upcoming releases.

edit flag offensive delete publish link more

Comments

1

@lenggi , @chris.adams you are our only hope and I'm sure you are close to the answer. My Owncloud Calendar is a mess, this is a real issue! Thank you again!

damourti ( 2015-06-11 17:13:52 +0200 )edit

Thank you!I had sort of given up on Jolla by this time, when I saw the 1.1.6.27 release didn't have a fix. You bring back hope!

martinrusler ( 2015-06-11 20:43:43 +0200 )edit

This sounds promising. Thanks a lot for digging into it @lenggi !

rha ( 2015-06-17 12:53:31 +0200 )edit

Thank you @lenggi - much appreciated!

chris.adams ( 2015-06-26 10:28:24 +0200 )edit

@lenggi THANK YOU! Hoping for hotfix release for this by Jolla...

martinrusler ( 2015-06-26 10:45:13 +0200 )edit
10

answered 2015-05-11 17:55:43 +0200

spacefrogg gravatar image

I looked at two events, one created in the owncloud web client, the other with the jolla calendar app. The difference between the two is, that the event from the jolla (which comes from libkcal) stores the whole timezone definition with the event including daylight saving time (DST) defintions. Events created from android phones seem to be structured alike. The event from the web interface references the timezone but delivers no defintion for it (which might be a bug on its own).

Now, when jolla has to reinterpret such an event from the owncloud it starts misinterpreting it. Proof by example. When you set up an event at May 1, 2015, 10.30h, it is transfered to owncloud like this:

# vcalendar entry from jolla with alot of timezone definitions
DSTART:TZID=Europe/Berlin:20150501T103000

It stores the local time (including DST) and references the timezone. Nothing interesting yet. When it comes to reading the vcal from owncloud it starts to do some funny magic: Jolla always reads the entry as winter time in the specific timezone and then applies the DST rules to the time entry again! This leads to the one hour offset during summer time. Whereby when the entry originally came without a timezone defintion, it does the correct thing and takes the value as stored even during summer time.

At least it seems to do the correct thing. I did not test what happens, when it comes to cross timezones from a date written in a timezone with DST in effect and read in a timezone with no/another DST.

I don't know the defintion of the vcal format. I would suspect that a time entry written as above means: "Time enty references stated timezone and already includes all corrections towards UTC." So when it comes to interpretation, all timezone rules have to be applied to reach UTC and the entry can then be further transformed to another/the same timezone, but nothing has to be done if timezones match.

@cybette or jolla as a whole, could you please verify that?

edit flag offensive delete publish link more

Comments

I believe you're correct, although I haven't checked what the RFC spec says about the DAYLIGHT or VTIMEZONE sections to be sure. https://github.com/nemomobile/buteo-sync-plugin-caldav/issues/50 is the issue tracking this problem, also we have an internal bug (which is assigned to Pekka) about it.

chris.adams ( 2015-05-13 09:59:02 +0200 )edit

any news on this? I'm using owncloud 7, everywhere ok, but on Jolla. Really a mess until you find out, that all the entries from Jolla only are wrong. Please help. And damn DST...

lazart ( 2015-05-19 18:45:40 +0200 )edit
3

We're investigating, and I believe I've found the root cause of the issue. I've attempted to contact the kcalcore developers (both via IRC and the kde-pim mailinglist) to verify the fix, but either way this will be fixed asap once we're certain that the fix doesn't break something else.

https://github.com/mer-packages/kcalcore/pull/7

chris.adams ( 2015-05-21 09:57:24 +0200 )edit

I hoped, the fix will be in the next update. Unfortunately it isn't.

Fellfrosch ( 2015-06-09 16:43:48 +0200 )edit

Hi, any new @chris.adams for this important hotfix? Thanks again for the work!

damourti ( 2015-06-22 18:20:18 +0200 )edit
6

answered 2015-09-24 09:47:08 +0200

argonius gravatar image

The problem has been fixed in 1.1.9.28. After upgrading my Jolla, all dates are shown correctly. On my wife's phone with 1.1.7, dates are still shifted using the same calendar source. Tested with OwnCloud 8.1.

edit flag offensive delete publish link more

Comments

The new UI was cool, but the best thing about 1.1.9 was the CalDAV time offset fix! Having a working calendar is to me more important than the changes to the UI.

luen ( 2015-09-25 23:54:36 +0200 )edit
3

answered 2015-09-25 18:34:55 +0200

lazart gravatar image

updated 2015-09-25 18:36:48 +0200

I've made a test-entry in my calendar yesterday with Sailfish 1.1.9.28. It didn't shift. It stays at the right time on Jolla, Thunderbird, and owncloud via web interface. Whoever is responsible for the fix: thank you very much. I'm using owncloud 7.x.x

edit flag offensive delete publish link more
2

answered 2015-09-01 22:48:06 +0200

SteelGrimpeur gravatar image

Just updated my Jolla to Björnträsket and it seems to have been fixed ! I can create events in OwnCloud and they sync to Calendar with the correct time. Events I create in the Jolla sync back to OwnCloud with the correct time. Thanks for the fix.

edit flag offensive delete publish link more

Comments

nope. At least not in my configuration: KDE Kontact <-> mailbox.org <-> Jolla. Still 1h offset

blubd1bub ( 2015-09-01 23:03:05 +0200 )edit

@SteelGrimpeur thanks for confirming the fix for your configuration.

@blubd1bub are you able to provide the raw VCALENDAR which is received from mailbox.org, so that I can debug your issue further?

chris.adams ( 2015-09-02 06:26:54 +0200 )edit

Well, unfortunately I can't confirm. Instead, it has become worse. Events created before update are now even 3 hours off. I use posteo.de.

Regards

dalas.revo ( 2015-09-02 10:36:20 +0200 )edit
1

Yeah, not fixed for me in Björnträsket either. On the plus side, I guess summertime will end soon so we'll have six months of usability. Sigh.

Conrad ( 2015-09-03 00:51:47 +0200 )edit

Where should we send VCALENDAR blobs that trigger this?

fledermaus ( 2015-09-03 02:14:18 +0200 )edit
0

answered 2015-05-11 15:03:18 +0200

Fellfrosch gravatar image

updated 2015-05-11 17:30:42 +0200

I can use my Caldav accounts again with a simple workaround. Well it's a dirty trick but at least it works: I ticked off automatic update off time and date. Set my Location to London which is one our behind my local time in Germany. Than I set my time again to the correct time. And it works again. Off course I'm not on the correct time zone now, but at least my dates all appear with a correct timestamp again. Only downside, I recognized is, that I can't use the app worldclock anymore. Because of the wrong time zone setting.

Edit: That's rubbish, don't do that. Look at the comments...

edit flag offensive delete publish link more

Comments

1

Nice hack. But now all mail you send from your Jolla will appear to be sent one hour earlier... and who knows what crypto protocols break.

nomeata ( 2015-05-11 15:26:48 +0200 )edit

holy shit, you are right. Or at least nearly. They don't appear to be sent an hour earlier, but an hour later. :P Damn it! That's so annoying... :(

Fellfrosch ( 2015-05-11 17:16:43 +0200 )edit

My workaround was to put all my events in the UTC time zone, then it shows up correctly. All my other devices also showed the events at the correct time too.

dazo ( 2015-08-26 12:29:19 +0200 )edit
0

answered 2015-06-11 12:50:27 +0200

LVPVS gravatar image

Hei,

I am not sure if this can be taken as an answer (if not, I will convert it to a comment)...

Anyways, I was experiencing the same.

I am in UTC+2. All my all-day events from Exchange and Hotmail were 2 hours off (meaning that they appeared on two subsequent days). I was very disappointed as it was still the same wit U16. Then I started fiddling around. First with time zones. This seemed to fix it, but as soon as I put my phone back to my local time zone, the slip was there again.

Then I imported .ICS files. The procedures and results were the same as above.

So I took a deep breath and deleted my calendar DBs and re-added my calendars.

After a while, when everything synced back, my two-hours off events were just in place! (With my phone already in my UTC+2 zone.)

Please consider deleting the DBs and re-creating them. It might fix your issues.

LVPVS out.

edit flag offensive delete publish link more

Comments

I tried that already, unfortunately that doesn't help.

Fellfrosch ( 2015-06-11 13:25:51 +0200 )edit

Might be the case with CalDav. At the moment, I don't have my ownCloud running... LVPVS out.

LVPVS ( 2015-06-11 13:58:40 +0200 )edit

I tried that as well. I even did a factory reset of the device. Nothing of that really helped.

rha ( 2015-06-17 12:49:46 +0200 )edit

I tried both with a new DB and an existing calendar - anything I sync from our Zimbra server is 1 hour off in summer time and on time in winter time (1.1.4.29) no matter what. Extremely annoying.

dyraig ( 2015-06-25 23:20:05 +0200 )edit

Deleting the accounts and DB and recrating them solved the issue for me.

I'm using Davical and SailfisOS early access Eineheminlampi 1.1.9.28.

kid ( 2015-09-15 23:04:44 +0200 )edit
0

answered 2015-06-26 16:37:24 +0200

Conrad gravatar image

Just as an FYI on the fundamental weirdness of this, I've been looking at detailed syncevolution logs while I suffer from this (and with the Edinburgh Festival in August, I am really going to suffer for lack of reliable event times):

  • Enter event using Evolution on Debian desktop. My timezone is UK summer time.
  • Sync to Jolla using SyncEvolution client (with syncevo-http-server running on desktop).
  • All events appear on Jolla one hour later than on desktop.
  • An interrupted sync followed by an uninterrupted sync caused these incorrect times to be pushed back to the deskop for those events that had made it to the 'phone during the first (interrupted) sync.
  • However, ignoring the interrupted sync example, after repeated uninterrupted successful syncs, times stay correct on desktop and wrong on Jolla.
  • After correcting times on Jolla and re-syncing to desktop, the syncevolution log registers no change in DTSTART!
  • It does however register a change in SEQUENCE. I have no idea what SEQUENCE is, but for all the events I corrected, it appears to have changed, usually increasing by one, or sometimes by two. Since I edited some events twice, maybe it's a version number?
edit flag offensive delete publish link more
0

answered 2015-07-06 11:26:51 +0200

poddl gravatar image

I did remove my calendar account, installed the "Sailfish OS Calendar Patch" by abyzthomas, applied the patch, add again my caldav account and the one hour time-shift is gone :-) Using owncloud server.

edit flag offensive delete publish link more

Comments

Hello @poddl , I can not confirm your statement with the patch. Can you check again the results after creating a new event with the Jolla and syncing with Owncloud at least 2 times in a row please?

damourti ( 2015-07-06 11:45:41 +0200 )edit

well strange things happens. I installed today another patch "upcoming events on lockscreen", did a reboot and the timeshift was here again. Seriously I had about 2 weeks no time-shift anymore, the sync process is hourly. But now I cannot confirm my own solution anymore. Unapply, reboot apply reboot, nothing helps anymore. So i changed my timezone from Berlin to London again, to get the right times displayed...

poddl ( 2015-07-07 01:01:56 +0200 )edit

Question tools

Follow
69 followers

Stats

Asked: 2014-10-24 19:06:40 +0200

Seen: 6,347 times

Last updated: Oct 23 '15