Closed Bug 1018120 Opened 10 years ago Closed 10 years ago

GMT Timezone with timezone information is assumed to be UTC / events move forward by 1 hour

Categories

(Calendar :: Lightning Only, defect)

Lightning 2.6.5
x86_64
All
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: faorg-lists, Unassigned)

Details

Attachments

(1 file)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:29.0) Gecko/20100101 Firefox/29.0 (Beta/Release)
Build ID: 20140428115719

Steps to reproduce:

1) double click on an event in the calendar or today pane to show details dialog (general, attendees, description)
2) click 'OK' to close the dialog


Actual results:

The event moves forward by 1 hour (later) in the calendar


Expected results:

The time should be unchanged.  If I click the 'Cancel' button, it is unchanged.

I am using Thunderbird 24.5.0 and the calendar is hosted on MS exchange 2010 accessed via DavMail 4.4.1.

My timezone is London and it seems to be related to DST: ie. I'm now in BST rather than UTC.  The machine timezone is set correctly, and javascript date/time tests in Thunderbird are ok.
OS: All → Linux
Hardware: All → x86_64
Exactly the same symptoms (also using TB 24.5.0 and Lightning 2.6.5 and DavMail 4.4.1, though on Win7/64). 

It seems to apply to all events created by Outlook email invitations, items sync'ed from my phone, and other imported items which appear not to contain Timezone information in the iCal data. AFAIK, events entered directly into Lightning include lines like:

DTSTART;TZID=Europe/London:20140514T091000
DTEND;TZID=Europe/London:20140514T101000

while the problem events contain:

DTSTART:20140704T140000
DTEND:20140704T170000
OS: Linux → All
I think other actions other than opening the details dialog may cause the same problem, possibly automatically processing a meeting invitation email and showing a reminder? eg. I have a meeting that passed before I could read the email or view it, and it is now shown 2 hours later than it should be.

This makes the issue more of a block to me: I don't know of a workaround to get meaningful times.
Dismissing a meeting reminder moves the event forward 1 hour.
Further to my earlier comment, to help illustrate why synced Outlook events move on, and native Lightning events don't, here are the contents of:

A) a test calendar event I created in Outlook with myself as invitee, and 
B) the same event created directly in Lightning

Note the Timezone differences. 

A) Created in Outlook (and 'broken' in Lightning)

BEGIN:VCALENDAR
METHOD:REQUEST
PRODID:Microsoft Exchange Server 2010
VERSION:2.0
BEGIN:VTIMEZONE
TZID:GMT Standard Time
BEGIN:STANDARD
DTSTART:16010101T020000
TZOFFSETFROM:+0100
TZOFFSETTO:+0000
RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=10
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:16010101T010000
TZOFFSETFROM:+0000
TZOFFSETTO:+0100
RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=3
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
ORGANIZER;CN=Steve Allen:MAILTO:steve.allen@law.ox.ac.uk
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN=Steve Alle
 n:MAILTO:steve.allen@law.ox.ac.uk
DESCRIPTION;LANGUAGE=en-US:\n\n
SUMMARY;LANGUAGE=en-US:a test
DTSTART;TZID=GMT Standard Time:20140619T090000
DTEND;TZID=GMT Standard Time:20140619T093000
UID:040000008200E00074C5B7101A82E0080000000030C35FD1ED8ACF01000000000000000
 010000000DF54F9DD08E593429B9A6A5C4F7F7EC8
CLASS:PUBLIC
PRIORITY:5
DTSTAMP:20140618T111100Z
TRANSP:OPAQUE
STATUS:CONFIRMED
SEQUENCE:2
LOCATION;LANGUAGE=en-US:
X-MICROSOFT-CDO-APPT-SEQUENCE:2
X-MICROSOFT-CDO-OWNERAPPTID:1592944606
X-MICROSOFT-CDO-BUSYSTATUS:TENTATIVE
X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY
X-MICROSOFT-CDO-ALLDAYEVENT:FALSE
X-MICROSOFT-CDO-IMPORTANCE:1
X-MICROSOFT-CDO-INSTTYPE:0
X-MICROSOFT-DISALLOW-COUNTER:FALSE
BEGIN:VALARM
ACTION:DISPLAY
DESCRIPTION:REMINDER
TRIGGER;RELATED=START:-PT15M
END:VALARM
END:VEVENT
END:VCALENDAR

----------------------

B) Created in Lightning (works correctly in both Lightning and Outlook)

BEGIN:VCALENDAR
METHOD:REQUEST
PRODID:Microsoft Exchange Server 2010
VERSION:2.0
BEGIN:VTIMEZONE
TZID:Europe/London
BEGIN:STANDARD
DTSTART:16010101T020000
TZOFFSETFROM:+0100
TZOFFSETTO:+0000
RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=10
END:STANDARD
BEGIN:DAYLIGHT
DTSTART:16010101T010000
TZOFFSETFROM:+0000
TZOFFSETTO:+0100
RRULE:FREQ=YEARLY;INTERVAL=1;BYDAY=-1SU;BYMONTH=3
END:DAYLIGHT
END:VTIMEZONE
BEGIN:VEVENT
ORGANIZER;CN=Steve Allen:MAILTO:steve.allen@law.ox.ac.uk
ATTENDEE;ROLE=REQ-PARTICIPANT;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN=Steve Alle
 n:MAILTO:steve.allen@oxogen.com
SUMMARY;LANGUAGE=en-US:test in lightning
DTSTART;TZID=Europe/London:20140619T100000
DTEND;TZID=Europe/London:20140619T110000
UID:e046108a-2f21-4b62-8515-3c936ec35374
CLASS:PUBLIC
PRIORITY:5
DTSTAMP:20140618T132502Z
TRANSP:OPAQUE
STATUS:CONFIRMED
SEQUENCE:0
X-MICROSOFT-CDO-APPT-SEQUENCE:0
X-MICROSOFT-CDO-OWNERAPPTID:2112263772
X-MICROSOFT-CDO-BUSYSTATUS:TENTATIVE
X-MICROSOFT-CDO-INTENDEDSTATUS:BUSY
X-MICROSOFT-CDO-ALLDAYEVENT:FALSE
X-MICROSOFT-CDO-IMPORTANCE:1
X-MICROSOFT-CDO-INSTTYPE:0
X-MICROSOFT-DISALLOW-COUNTER:FALSE
END:VEVENT
END:VCALENDAR
Do you get any error messages in Tools > Error Console?

How do you connect to Exchange Server calendar? Do you use one of Lightnings built-in providers? Or do you use an additional extension for this?

Does this happens only when using Lightning 2.6.5? Could you test if it works with Lightning 2.6.4? There is similar problem described in bug 1027006, maybe it is identical problem.
Flags: needinfo?(faorg-lists)
I get no error messages in the Console.

I can confirm reverting to 2.6.4 fixes the problem, thanks.
Flags: needinfo?(faorg-lists)
Changes in 2.6.5:
> https://bugzilla.mozilla.org/buglist.cgi?quicksearch=ALL+:calendar+resolution:FIXED+milestone:2.6.5

Philipp, is it possible that this and bug 1027006 is regression from Bug 977097, i.e. somehow the given timezone "GMT Standard Time" might be interpreted as UTC due to the alias "GMT"?
Flags: needinfo?(philipp)
It is indeed the only timezones related issue, but looking at the code I can't imagine. I guess its best to revert the patch in bug 977097 locally and figure out if thats the culprit. Rob, do you feel comfortable doing such a thing?
Flags: needinfo?(philipp) → needinfo?(faorg-lists)
I was wondering if previously it didn't save the change, and another such as bug 938459 was masking an existing timezone issue?

I don't know anything about mozilla/thunderbird plugins or how to compile them.  I'm afraid I don't have time to learn at the moment.
Flags: needinfo?(faorg-lists)
Ok, I will see if I can give you a prepared packaged, will contact you via email once I clear the needinfo request.
Flags: needinfo?(philipp)
Hi folks

I get exactly this behaviour too

Ubuntu 14.04  Thunderbird 24.6.0 Lightning 2.6.6

I use Davmail as prxy to Exchange

Paul
I can also confirm reverting to 2.6.4 fixes this
Hey Folks,

please test if it works with this version of Lightning 2.6.5 for Linux. If you can't test on Linux please email me and I'll send you one for a different OS. Does the issue still occur with this xpi, or is it fixed?

If its fixed, please comment here and tell me more about your setup. Are you using the exchange provider? What Timezone do you have set in Lightning's preferences? Does this also happen when you take the ics data from the first part of comment 4, save it in a file, and then access the file using File > Open > Calendar File?
Flags: needinfo?(philipp)
Philipp

thanks for looking at this !
 /*
please test if it works with this version of Lightning 2.6.5 for Linux. If you can't test on Linux please email me and I'll send you one for a different OS. Does the issue still occur with this xpi, or is it fixed?*/

YES!

If its fixed, please comment here and tell me more about your setup. Are you using the exchange provider?

/* using Davmail prxy, provider for Google Exchange and msg menu integration for Unity Laucnher */

 What Timezone do you have set in Lightning's preferences? 

/* Europe/london */

Does this also happen when you take the ics data from the first part of comment 4, save it in a file, and then access the file using File > Open > Calendar File?

/* I did not try this */


Paul
(In reply to broomie from comment #14)
> Philipp
> 
> thanks for looking at this !
>  /*
> please test if it works with this version of Lightning 2.6.5 for Linux. If
> you can't test on Linux please email me and I'll send you one for a
> different OS. Does the issue still occur with this xpi, or is it fixed?*/
> 
> YES!

Yes it still occurs or yes it is fixed?
Michel, putting you on CC in case you can shed some light on this. Could this be an issue in the Exchange provider? Commenters say it works in 2.6.4, but fails in 2.6.5+. The only timezone related issue we fixed there is bug 977097, but I don't see how this could offset the event that carries its own timezone information.
(In reply to broomie from comment #14)
> Philipp
> 
> thanks for looking at this !
>  /*
> please test if it works with this version of Lightning 2.6.5 for Linux. If
> you can't test on Linux please email me and I'll send you one for a
> different OS. Does the issue still occur with this xpi, or is it fixed?*/
> 
> YES!
> 
> If its fixed, please comment here and tell me more about your setup. Are you
> using the exchange provider?
> 
> /* using Davmail prxy, provider for Google Exchange and msg menu integration
> for Unity Laucnher */
> 
>  What Timezone do you have set in Lightning's preferences? 
> 
> /* Europe/london */
> 
> Does this also happen when you take the ics data from the first part of
> comment 4, save it in a file, and then access the file using File > Open >
> Calendar File?
> 
> /* I did not try this */
> 
> 
> Paul

YES ITS FIXED _ sorry about ambiguity.
(In reply to broomie from comment #14)

> /* using Davmail prxy, provider for Google Exchange and msg menu integration
> for Unity Laucnher */

Ok, another question: I believe the davmail proxy provides a CalDAV interface for an exchange server. Then you mention Provider for Google (?) Exchange. Are you using the MS exchange provider from here <https://addons.mozilla.org/en-US/thunderbird/addon/provider-for-microsoft-exchang/>  to access your exchange server, or via caldav?

It would be interesting to know if this also happens for other caldav servers. I am quite surprised that the aliases break things.

Paul, is there any chance you could retrieve the ics of an event that is causing trouble? This extension should help you do that: http://mozilla.kewis.ch/ics-inspector-0.8.xpi
(In reply to Philipp Kewisch [:Fallen] from comment #18)
> (In reply to broomie from comment #14)
> 
> > /* using Davmail prxy, provider for Google Exchange and msg menu integration
> > for Unity Laucnher */
> 
> Ok, another question: I believe the davmail proxy provides a CalDAV
> interface for an exchange server. Then you mention Provider for Google (?)
> Exchange. Are you using the MS exchange provider from here
> <https://addons.mozilla.org/en-US/thunderbird/addon/provider-for-microsoft-
> exchang/>  to access your exchange server, or via caldav?
> 
> It would be interesting to know if this also happens for other caldav
> servers. I am quite surprised that the aliases break things.
> 
> Paul, is there any chance you could retrieve the ics of an event that is
> causing trouble? This extension should help you do that:
> http://mozilla.kewis.ch/ics-inspector-0.8.xpi

Hi and thanks again

I am using Davmail - for Exchange using webdav http://davmail.sourceforge.net/download.html

davmail properties here:

here is properties file

#DavMail settings
#Thu May 02 15:03:26 BST 2013
davmail.allowRemote=false
davmail.bindAddress=
davmail.caldavAlarmSound=
davmail.caldavEditNotifications=false
davmail.caldavPastDelay=90
davmail.caldavPort=1080
davmail.clientSoTimeout=
davmail.defaultDomain=
davmail.disableGuiNotifications=false
davmail.disableUpdateCheck=false
davmail.enableEws=auto
davmail.enableKerberos=false
davmail.enableProxy=true
davmail.forceActiveSyncUpdate=false
davmail.imapAutoExpunge=true
davmail.imapIdleDelay=
davmail.imapPort=1143
davmail.keepDelay=30
davmail.ldapPort=1389
davmail.logFilePath=
davmail.logFileSize=
davmail.noProxyFor=
davmail.popMarkReadOnRetr=false
davmail.popPort=1110
davmail.proxyHost=webmail.xxxx.com
davmail.proxyPassword=xxxxxxxxx
davmail.proxyPort=443
davmail.proxyUser=EU\\paul.broome
davmail.sentKeepDelay=90
davmail.server=false
davmail.server.certificate.hash=
davmail.showStartupBanner=true
davmail.smtpPort=1025
davmail.smtpSaveInSent=true
davmail.ssl.clientKeystoreFile=
davmail.ssl.clientKeystorePass=
davmail.ssl.clientKeystoreType=
davmail.ssl.keyPass=
davmail.ssl.keystoreFile=
davmail.ssl.keystorePass=
davmail.ssl.keystoreType=
davmail.ssl.nosecurecaldav=false
davmail.ssl.nosecureimap=false
davmail.ssl.nosecureldap=false
davmail.ssl.nosecurepop=false
davmail.ssl.nosecuresmtp=false
davmail.ssl.pkcs11Config=
davmail.ssl.pkcs11Library=
davmail.url=https\://webmail.xxxxxxxx
davmail.useSystemProxies=true
log4j.logger.davmail=DEBUG
log4j.logger.httpclient.wire=WARN
log4j.logger.org.apache.commons.httpclient=WARN
log4j.rootLogger=WARN

that .ics link is not working for me will try again in the morning (in UK)

The Google add on is  Provider for Google Calendar 0.25

cheers

Paul
Paul, is there some way you could provide me with access to this davmail gateway, i.e a demo account where I could try to reproduce the issue? Feel free to send me private email, you can find my gpg keys at http://gpg.mozilla.org/pks/lookup?op=get&search=0x20904A84FE62C357 if you want to send me anything encrypted.
Making comment private since it contains a few email addresses. I will take a look soon.
Ok, I see. This event is using "GMT" as the timezone ID, but still defining its own timezone information. We assume that "GMT" is UTC, which it normally is.

The correct fix would be to get the DavMail gateway to not name it GMT but instead Europe/London. The timezone information matches that of Europe/London. Could you file a bug on the davmail gateway and link it here?

I could make an exception in Lightning and remove GMT for a while, but eventually I would like to add it in again.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Summary: events move forward by 1 hour every time I click 'OK' → GMT Timezone with timezone information is assumed to be UTC / events move forward by 1 hour
Target Milestone: --- → 3.3
(In reply to Philipp Kewisch [:Fallen] from comment #23)
> Ok, I see. This event is using "GMT" as the timezone ID, but still defining
> its own timezone information. We assume that "GMT" is UTC, which it normally
> is.
> 
> The correct fix would be to get the DavMail gateway to not name it GMT but
> instead Europe/London. The timezone information matches that of
> Europe/London. Could you file a bug on the davmail gateway and link it here?
> 
> I could make an exception in Lightning and remove GMT for a while, but
> eventually I would like to add it in again.

OK will log a bug however its worth saying I have used this combo as do many for years without this issue. I suspect Davmail developer may have otehr views over GMT vs Europe London.

Thanks for all your hard work - its appreciated. I wil copy in feedback from Davmail.

Paul
(In reply to broomie from comment #24)
> (In reply to Philipp Kewisch [:Fallen] from comment #23)
> > I could make an exception in Lightning and remove GMT for a while, but
> > eventually I would like to add it in again.
> 
> OK will log a bug however its worth saying I have used this combo as do many
> for years without this issue. I suspect Davmail developer may have otehr
> views over GMT vs Europe London.
Indeed, I concur that its been working and that this patch breaks behavior. I'm just saying that GMT != Europe/London because GMT == UTC. One has DST, the other doesn't. I'm happy to discuss this with the DavMail developers too so feel free to post the link to the bug report. If there is no progress in the next week, please comment here again and I'll take out GMT from the alias list.
Hello, I have an issue with Lightning 2.6.5 (and 2.6.6) which I think is similar, I have logged it here with bug 1027006.

Just wanted to say that installing the modified 2.6.5 xpi file attachment in comment 13 by Philip Kewisch resolves the time difference of 1 hour that we are seeing. However, this patch did not seem to make it into 2.6.6, we still have the 1 hour time difference showing up. 

To confirm tested on Linux. We use Davmail (webdav) with an Exchange 2010 set-up. The timezone set in Lightning preferences is Europe/London. 

Please could this patch that has been created be applied to Lightning version 2.6.7 as it would fix a lot of problems we are having with our Thunderbird-Lightning users? Currently we are on Lightning 2.6.4 as this does not suffer from 1 hour differences, and syncs correctly with Exchange but we would like to move onto the latest version. 

Thank you
(In reply to broomie from comment #24)
> (In reply to Philipp Kewisch [:Fallen] from comment #23)
> > Ok, I see. This event is using "GMT" as the timezone ID, but still defining
> > its own timezone information. We assume that "GMT" is UTC, which it normally
> > is.
> > 
> > The correct fix would be to get the DavMail gateway to not name it GMT but
> > instead Europe/London. The timezone information matches that of
> > Europe/London. Could you file a bug on the davmail gateway and link it here?
> > 
> > I could make an exception in Lightning and remove GMT for a while, but
> > eventually I would like to add it in again.
> 
> OK will log a bug however its worth saying I have used this combo as do many
> for years without this issue. I suspect Davmail developer may have otehr
> views over GMT vs Europe London.
> 
> Thanks for all your hard work - its appreciated. I wil copy in feedback from
> Davmail.
> 
> Paul

logged with Davmail as a shared issue here : https://sourceforge.net/p/davmail/discussion/644057/thread/13644afd/?limit=25
Well, I don't have other views, it's just that Microsoft decided to name Europe/London timezone:
GMT Standard Time
=> this was mapped to TZID "GMT" in DavMail

Note that this was not an issue with previous Lightning/Thunderbird releases that relied on full timezone definition, not TZID... unless I am mistaken.

Anyway the fix is already available in DavMail subversion and will be included in next release.
Yes, previous releases used the full timezone definition, but not if the timezone is known to the timezone service. For example, if you use Europe/Berlin, it will always use the latest definition of that timezone, regardless of what timezone definition is specified in the incoming ics data. This was done to ensure that timezone upgrades didn't have to be done manually. Its the same for GMT, since Lightning 2.6.5.

I will remove GMT from Lightning 3.3.x to make sure users of older DavMail versions are not affected, but I will keep it in the next beta release.
Here is the beta commit, which means we are done here. For the next beta, it will be reverted through the merge from aurora.

https://hg.mozilla.org/releases/comm-beta/rev/7a60689105d1
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Thanks for all your hard work

much appreciated

Paul
Philipp when you mention Lightning 3.3.x to have a fix applied, does this mean that Lightning 2.6.7 (this is the one that we are waiting on, the latest from EPEL repo which we are using on our RHEL's) will also have the fix applied? Thanks again.
There are currently no plans to backport this to Lightning 2.6.x. If more patches accumulate then I can reconsider about every 6 weeks. If you need to deploy this in an enterprise environment, I'd suggest manually changing the xpi, its really just removing the "GMT" value from a file.

Lightning 3.3 for Thunderbird 31 will be released tomorrow, I'm sure the Redhat repositories will catch up.
Note that DavMail 4.5.1 released yesterday includes a fix for this timezone mapping issue.
Hi All, 

davmail seems to be fixed for version 4.5.1 for this 1 hour time difference. 

However we have installed davmail 4.5.1 with the timezone fix but we still seem to see a time difference of 1 hour when using Thunderbird Lightning calendar 2.6.5 but not in 2.6.6 for certain kinds of entries created in Outlook Exchange.

However, my impression is that this should not happen any more because the entries times should be taken care of by the davmail version 4.5.1 (convert entries to Europe/London timezone).

Only meeting invites created by single individuals sent to a number of people exhibit this problem otherwise when an individual creates an entry in Outlook for their own calendar it syncs correctly to their Thunderbird Lightning calendar. Is there something special about Thunderbird Lightning 2.6.5 that would still cause the 1 hour time difference error for certain kinds of entries (basically group meetings) despite davmail being fixed? As I say the timing error only occurs for meeting invites from one person to many people, someones own calendar entries get synched correctly from Outlook Exchange to Thunderbird Lightning.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: