Closed Bug 432579 Opened 12 years ago Closed 12 years ago

Enabling cache for public calendar like US Holidays causes entries to dissappear

Categories

(Calendar :: Provider: GData, defect, minor)

defect
Not set
minor

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: btaber, Assigned: Fallen)

Details

(Whiteboard: [gdata-0.5])

Attachments

(5 files)

User-Agent:       Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)
Build Identifier: Tunderbird version 2.0.0.14 (20080421), Lightning 0.8 build 2008033120, Google Calendar Provider 0.4

In my Google Calender, I have the public calendar named US Holidays.  (Calendar ID: usa@holiday.calendar.google.com)  If I setup the calendar as just read only, it shows fine.  If I enable the cache feature, the calendar items dissappear, but my normal calendars that have the cache feature enable have no problem.  Having read only on or off makes no difference.  If I disable the cache feature, the calendar items re-appear.

Reproducible: Always

Steps to Reproduce:
1. Add new calendar from feed http://www.google.com/calendar/feeds/usa%40holiday.calendar.google.com/public/basic

2. Enable cache feature and restart Thunderbird
3. To have items re-appear, disable cache feature and restart thinderbird


Expected Results:  
Calendar items should have been cached and stayed in calendar
Confirmed here: same issue here with my Google Calendars with the  20080519 nightly
Don"t know it it's related, but found that in the console:

ErreurΒ : [Exception... "'[JavaScript Error: "aCount is not defined" {file: "file:///D:/Olivier/Internet/Thunderbird/extensions/%7Ba62ef8ec-5fdc-40c2-873c-223b8a6925cc%7D/js/calGoogleCalendar.js" line: 1084}]' when calling method: [calIChangeLog::replayChangesOn]"  nsresult: "0x80570021 (NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS)"  location: "JS frame :: file:///D:/Olivier/Internet/Thunderbird/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/js/calCachedCalendar.js :: cCC_synchronize :: line 262"  data: yes] STACK: 1: [file:///D:/Olivier/Internet/Thunderbird/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/js/calUtils.js:1802] notifyFunc
2: [null:0] null
3: [file:///D:/Olivier/Internet/Thunderbird/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/js/calUtils.js:1805] calListenerBag_notify
4: [file:///D:/Olivier/Internet/Thunderbird/extensions/%7Ba62ef8ec-5fdc-40c2-873c-223b8a6925cc%7D/js/calGoogleCalendar.js:589] cGC_refresh
5: [null:0] null

Fichier sourceΒ : file:///D:/Olivier/Internet/Thunderbird/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/js/calUtils.js
LigneΒ : 1802
I can also confirm this (20080529 nightly)! I get the same error in the error console. Plus this:

Error: aCount is not defined
Source File: file:///C:/.../Anwendungsdaten/Thunderbird/Profiles/57mw74km.default/extensions/%7Ba62ef8ec-5fdc-40c2-873c-223b8a6925cc%7D/js/calGoogleCalendar.js
Line: 1094

and

Error: aCount is not defined
Source File: file:///C:/.../Anwendungsdaten/Thunderbird/Profiles/57mw74km.default/extensions/%7Ba62ef8ec-5fdc-40c2-873c-223b8a6925cc%7D/js/calGoogleCalendar.js
Line: 1094

Strange thing is, this only happens for some calendars. I have 3 google clanedars, and this problem only happens with one of them. I have subscribed to a public cal, and this one is ok, but one of my privte cals has this problem.

So maybe the bug description should be changed (not only ublic cals affected) and the severity moved uo to maj?
Attached patch Fix - v1 β€” β€” Splinter Review
Not sure if this fixes all of what you are seeing, but this fix is required in any case, and will probably get rid of the error message you are seeing.
Assignee: nobody → philipp
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Attachment #323273 - Flags: review?(daniel.boelzle)
Attachment #323273 - Flags: review?(daniel.boelzle) → review+
Checked in on HEAD and MOZILLA_1_8_BRANCH

-> FIXED

Please reopen if the bug persists in tomorrow's nightlies.
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
OS: Windows XP → All
Hardware: PC → All
Resolution: --- → FIXED
Whiteboard: [gdata-cvs]
My first checks are negative, with today's build :( !!! Can someone confirm?
No errors anymore in the console, but some entries are still missing... I'll try to send a debug log.
I can confirm that with the nightly from 2008-06-03 the activated cache functionality still makes all entries from GoogleCalendar disappear.
Status: RESOLVED → REOPENED
Flags: wanted-calendar0.9+
Resolution: FIXED → ---
Please try to disable the cache then re-enable it
I can also confirm this with the 20080603 nightly. Disabling and re-enabeling doesn't work for me.
Same as Fabi for me.
Attached patch Fix - part 2 β€” β€” Splinter Review
Some other parts of syncChangesOn were not correctly migrated.
Attachment #324272 - Flags: review?(daniel.boelzle)
Comment on attachment 324272 [details] [diff] [review]
Fix - part 2

r=dbo
Attachment #324272 - Flags: review?(daniel.boelzle) → review+
Checked in on HEAD and MOZILLA_1_8_BRANCH

-> FIXED
Status: REOPENED → RESOLVED
Closed: 12 years ago12 years ago
Resolution: --- → FIXED
Hi
Just tested the lastest nightly 20080609 (I think the fix should be in, isn't it?) and no preexisting recurring event will appear anymore in a Google Calendar when switched to cache. Other events are fine though. I was able to create new recurring ones though. 
Can anybody confirm?
Everything seems to work fine for me
Checked again and found the following errors in the console for the cached calendar (with LTG and Provider from 20080609). 

Erreur : 'Illegal value' when calling method: [calIRecurrenceInfo::modifyException] = NS_ERROR_ILLEGAL_VALUE
Fichier source : file:///D:/Documents%20and%20Settings/xxxxxx/Application%20Data/Thunderbird/Profiles/r7xt8ci2.Lightning%20seul/extensions/%7Ba62ef8ec-5fdc-40c2-873c-223b8a6925cc%7D/js/calGoogleCalendar.js
Ligne : 892

Error getting items:
[Exception... "'Illegal value' when calling method: [calIRecurrenceInfo::modifyException]"  nsresult: "0x80070057 (NS_ERROR_ILLEGAL_VALUE)"  location: "JS frame :: file:///D:/Documents%20and%20Settings/xxxxx/Application%20Data/Thunderbird/Profiles/r7xt8ci2.Lightning%20seul/extensions/%7Ba62ef8ec-5fdc-40c2-873c-223b8a6925cc%7D/js/calGoogleCalendar.js :: cGC_getItems_response_onResult :: line 892"  data: no]


Erreur : Assert failed: replay action failed: null
1: [file:///D:/Documents%20and%20Settings/xxxxx/Application%20Data/Thunderbird/Profiles/r7xt8ci2.Lightning%20seul/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/js/calUtils.js:1422] ASSERT
2: [file:///D:/Documents%20and%20Settings/xxxxx/Application%20Data/Thunderbird/Profiles/r7xt8ci2.Lightning%20seul/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/js/calCachedCalendar.js:256] anonymous
3: [null:0] null
4: [file:///D:/Documents%20and%20Settings/xxxxx/Application%20Data/Thunderbird/Profiles/r7xt8ci2.Lightning%20seul/extensions/%7Ba62ef8ec-5fdc-40c2-873c-223b8a6925cc%7D/js/calGoogleCalendar.js:963] cGC_getItems_response_onResult
5: [file:///D:/Documents%20and%20Settings/xxxxx/Application%20Data/Thunderbird/Profiles/r7xt8ci2.Lightning%20seul/extensions/%7Ba62ef8ec-5fdc-40c2-873c-223b8a6925cc%7D/js/calGoogleCalendar.js:1092] cGC_getItems_response_onResult

Fichier source : file:///D:/Documents%20and%20Settings/xxxxx/Application%20Data/Thunderbird/Profiles/r7xt8ci2.Lightning%20seul/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/js/calUtils.js
Ligne : 1426
Here is the console log (calendar log is on) for one of the calendar where recurring events do not show up.
Other calendar are displayed properly though.
The last event in your log that is being parsed, could you export it as ICS and attach? I think this might be related to a different bug that I also want fixed.
This is probably realted to comment 16:

When enabling cache, the calendars don't reload.

To reproduce:

1. Enable cache on a calendar
2. Create a new event in google calendar on the internet
3. Reload google calendar

nothing happens. The new event is not displayed.

Error log: 

Error: Assert failed: replay action failed: null
1: [file:///C:/Dokumente%20und%20Einstellungen/xxx/Anwendungsdaten/Thunderbird/Profiles/57mw74km.default/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/js/calUtils.js:1422] ASSERT
2: [file:///C:/Dokumente%20und%20Einstellungen/xxx/Anwendungsdaten/Thunderbird/Profiles/57mw74km.default/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/js/calCachedCalendar.js:256] anonymous
3: [null:0] null
4: [file:///C:/Dokumente%20und%20Einstellungen/xxx/Anwendungsdaten/Thunderbird/Profiles/57mw74km.default/extensions/%7Ba62ef8ec-5fdc-40c2-873c-223b8a6925cc%7D/js/calGoogleCalendar.js:963] cGC_getItems_response_onResult
5: [file:///C:/Dokumente%20und%20Einstellungen/xxx/Anwendungsdaten/Thunderbird/Profiles/57mw74km.default/extensions/%7Ba62ef8ec-5fdc-40c2-873c-223b8a6925cc%7D/js/calGoogleCalendar.js:1092] cGC_getItems_response_onResult

Source File: file:///C:/Dokumente%20und%20Einstellungen/xxx/Anwendungsdaten/Thunderbird/Profiles/57mw74km.default/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/js/calUtils.js
Line: 1426

Can anyone comfirm?

Fabi
Hi Philipp
Here is the event you asked for. But I don't know how to export the entire recurring event, so I think I just have exported one occurrence of it! I hope you won't mind.
The event is a pattern of a period of 7 full days every 14 days.
Attachment #324611 - Attachment mime type: text/calendar → text/plain
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Attached patch Cache fixes - v1 β€” β€” Splinter Review
Although this doesn't fix all the cached mode problems, it does fix a bunch of them. I'm requesting review to make sure my other upcoming patches don't bitrot.
Attachment #325944 - Flags: review?(daniel.boelzle)
Comment on attachment 325944 [details] [diff] [review]
Cache fixes - v1

r=dbo
Attachment #325944 - Flags: review?(daniel.boelzle) → review+
Checked in for Philipp on HEAD and MOZILLA_1_8_BRANCH => FIXED.
Status: REOPENED → RESOLVED
Closed: 12 years ago12 years ago
Resolution: --- → FIXED
Target Milestone: --- → 0.9
Whiteboard: [gdata-cvs] → [gdata-0.5]
You need to log in before you can comment on or make changes to this bug.