Closed Bug 1792896 Opened 2 years ago Closed 2 years ago

Thunderbird no longer syncing future Google Calendar events

Categories

(Thunderbird :: Untriaged, defect)

Thunderbird 102
defect

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: garret, Unassigned)

Details

Steps to reproduce:

I opened Thunderbird expecting to see all my Google Calendar events using CalDAV. They have been working fine for months.

See also Issue 1791183, which relates to broken CardDAV.

Actual results:

There are no Google Calendar events in the future. There are however Google Calendar events in the past.

Interestingly, all-day multiday events are showing up in the future, but single day events are not. This is consistent across multiple Google Calendars.

If I open Developer Tools and tell the calendars to resync, I see multiple requests to apidata.googleusercontent.com, each one returning a 207 HTTP status code.

Expected results:

I should see the same Google Calendar events that show up on https://calendar.google.com/ .

Note that some calendar events were added by Thunderbird, while others were added via the Google Calendar site.

Some new single-day events are showing up in the future, but on another calendar.

A future single-day event is showing up on the main calendar, but it's one that I had added months ago. Nothing for the future that I added in the past few weeks seems to be showing up on the main calendar.

Probably you're seeing bug 1789424

Probably you're seeing bug 1789424

But I'm not immediately seeing any 403 errors.

Since you mentioned the error console, I pull it up and there are things that don't look right:

Calendar: 
Exception { name: "NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS", message: "[JavaScript Error: \"null has no properties\" {file: \"resource:///modules/calendar/Ical.jsm\" line: 5520}]'[JavaScript Error: \"null has no properties\" {file: \"resource:///modules/calendar/Ical.jsm\" line: 5520}]' when calling method: [calIDateTime::getInTimezone]", result: 2153185313, filename: "resource:///modules/calendar/calStorageHelpers.jsm", lineNumber: 189, columnNumber: 0, data: XPCWrappedNative_NoHelper, stack: "newDateTime@resource:///modules/calendar/calStorageHelpers.jsm:189:19\ngetEventFromRow@resource:///modules/calendar/CalStorageItemModel.jsm:653:24\ngetEventFromRow@resource:///modules/calendar/CalStorageCachedItemModel.jsm:148:24\ngetEvents/start/<@resource:///modules/calendar/CalStorageItemModel.jsm:175:30\nhandleResultInner@resource:///modules/calendar/CalStorageDatabase.jsm:176:21\n", location: XPCWrappedNative_NoHelper }
Unknown function icaltimezone(data) {
    this.wrappedJSObject = this;
    this.fromData(data);
  } passed at 1: [resource:///modules/calendar/Ical.jsm:37] unwrapSingle
2: [resource:///modules/calendar/Ical.jsm:27] unwrapSetter
3: [resource:///modules/calendar/Ical.jsm:23] unwrap/<
4: [resource:///modules/calendar/calStorageHelpers.jsm:189] newDateTime
5: [resource:///modules/calendar/CalStorageItemModel.jsm:653] getEventFromRow
6: [resource:///modules/calendar/CalStorageCachedItemModel.jsm:148] getEventFromRow
7: [resource:///modules/calendar/CalStorageItemModel.jsm:974] getItemById/<
8: [resource:///modules/calendar/CalStorageDatabase.jsm:176] handleResultInner
9: [resource:///modules/calendar/CalStorageDatabase.jsm:170] handleResult
TypeError: zone is null
Ical.jsm:5520:26
    convertToZone resource:///modules/calendar/Ical.jsm:5520
    getInTimezone resource:///components/calDateTime.js:137
    unwrapSetter resource:///modules/calendar/Ical.jsm:27
    unwrap resource:///modules/calendar/Ical.jsm:23
    newDateTime resource:///modules/calendar/calStorageHelpers.jsm:189
    getEventFromRow resource:///modules/calendar/CalStorageItemModel.jsm:653
    getEventFromRow resource:///modules/calendar/CalStorageCachedItemModel.jsm:148
    getItemById resource:///modules/calendar/CalStorageItemModel.jsm:974
    handleResultInner resource:///modules/calendar/CalStorageDatabase.jsm:176
    handleResult resource:///modules/calendar/CalStorageDatabase.jsm:170
Calendar: 
Exception { name: "NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS", message: "[JavaScript Error: \"zone is null\" {file: \"resource:///modules/calendar/Ical.jsm\" line: 5520}]'[JavaScript Error: \"zone is null\" {file: \"resource:///modules/calendar/Ical.jsm\" line: 5520}]' when calling method: [calIDateTime::getInTimezone]", result: 2153185313, filename: "resource:///modules/calendar/calStorageHelpers.jsm", lineNumber: 189, columnNumber: 0, data: XPCWrappedNative_NoHelper, stack: "newDateTime@resource:///modules/calendar/calStorageHelpers.jsm:189:19\ngetEventFromRow@resource:///modules/calendar/CalStorageItemModel.jsm:653:24\ngetEventFromRow@resource:///modules/calendar/CalStorageCachedItemModel.jsm:148:24\ngetItemById/<@resource:///modules/calendar/CalStorageItemModel.jsm:974:27\nhandleResultInner@resource:///modules/calendar/CalStorageDatabase.jsm:176:21\nhandleResult@resource:///modules/calendar/CalStorageDatabase.jsm:170:41\n", location: XPCWrappedNative_NoHelper }
TypeError: foundItem is nullCalDavCalendar.jsm:1040:24

Could that be related?

It's disappointed that now together with bug 1789424, Thunderbird has broken both my calendar and my contacts.

I added a new event for next week. The event showed up in Thunderbird as soon as I added it. After restarting Thunderbird, for a few seconds the event appeared but after a few seconds (I presume after it finished syncing) the new event disappeared from Thunderbird. It still appears at https://calendar.google.com/ .

Please escalate this to critical.

I finally gave in and unsubscribed from the Google Calendar (I didn't touch the others that were working), and then subscribed to it again. The current/future events now show up again!

This sounds something similar to Bug 1791183, where Google Contacts stopped syncing. Someone investigated that and fixed that bug. Here I didn't see any HTTP client error statuses, though.

I will monitor the situation and see if it starts happening again.

Status: UNCONFIRMED → RESOLVED
Closed: 2 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.