Closed Bug 344919 Opened 18 years ago Closed 18 years ago

Sunbird fails to display missed Task alarms on startup

Categories

(Calendar :: Alarms, defect)

Sunbird 0.3a2
x86
Windows 2000
defect
Not set
major

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: centralcavern, Assigned: jminta)

References

Details

Attachments

(1 file)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.0; en-GB; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.4
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.9a1) Gecko/20060703 Sunbird/0.3a2+

Sunbird fails to display missed Task alarms on startup

Software/ platform:
Clean install of Sunbird 0.3 alpha2 (ftp://ftp.mozilla.org/pub/mozilla.org/calendar/sunbird/releases/0.3a2/sunbird-0.3a2.en-US.win32.installer.exe) on clean (freshly reinstalled) MS Windows 2000 5.00.2195 Service Pack 4 (Celeron CPU 1300MHz, 196MB RAM).
My timezone is GMT, and I am set to auto-adjust for daylight savings changes (it is 17 Jul 2006, around 12:40am at time of test). Regional options are set to "English UK".  I do not believe (but have not confirmed) that the timezone etc makes any difference as I've had missed alarms days overdue that have never displayed.  Alarms work fine while sunbird is running.  Missed "meeting-style" alarms work fine.  It is only missed task alarms that are problematic.

Reproducible: Always

Steps to Reproduce:
(Steps 1 and 2 are on my clean installation PC; they are not necessary to reproduce in general).
1. I allow the installer to run Sunbird on completion of installation.
2. I bring up Tools->Options->Alarms and check that "Show MIssed Alarms" and "Show and Alarm Box" are both set, then hit "Cancel".
3. I double click "Tasks" and set a new task:
Title: Test
Location: Test2
4. I set the date to be 20 mins in the future, and leave the due date alone (unchecked).
5. I click "More" and set the alarm to "15 minutes before" and hit ok.
6. I close Sunbird and wait about 10 minutes.
7. I re-open sunbird: the alarm has not gone off.
(
Confirming that task alarms generally are working on my PC:
8. I re-open the alarm and set the alarm to be 20 mins in the future again, with a 15 minute alarm.
9. I leave sunbird open this time, and the alarm goes off just fine.
)
Actual Results:  
nothing

Expected Results:  
On re-opening sunbird at step 7 an alarm dialog should be displayed.

I reproduced this bug on a clean system in order to ensure I hadn't "contaminated" my day-to-day sunbird that runs on a "dirty" machine:)  The bug is also apparent on my "dirty" machine, and has persisted from the "official" 0.3 alpha2 through the intermittant nightly builds that I have tried up to http://ftp.mozilla.org/pub/mozilla.org/calendar/sunbird/nightly/latest-trunk/sunbird-0.3a2+.en-US.win32.zip dated 13-Jul-2006 10:19, which won't start up properly (it displays an empty "Alert" window, which I can close, but nothing else happens on my "dirty" machine (presumably due to some junk in my calendar file), and fails to display an alarm on my "clean" machine).
I can set simultaneous meeting and task alarms and observe the meeting one go off but the task alarm does not.

Apologies if this is covered elsewhere, there are quite a few alarm-related bugs, but I didn't see this one listed.
Apologies also if this is not "major" (feel free to regrade it) - it is major to me, task and calendar alarms are the main reason I use calendar (head like a sieve:), and the failure to display task-alarms on startup means I keep forgetting to do stuff.
I am presuming that this belongs in the "Base" component, but really that's just a guess. Again, feel free to move to another component.
I'd be interested to know if the problem exists on other platforms.
Can you please open Sunbird with the -console option.  The alarm system has extra debug information that will be reported to the console describing Sunbird's interpretation of each alarm on startup.  This information would help show where things are going wrong.
My "dirty" version (a nightly build with the exe date 03-Jul-2006 07:15) gives me:

error creating table cal_calendars -- probably already exists
error creating table cal_calendars_prefs -- probably already exists
*** Calendar schema version is: 5
Starting calendar alarm service
observer added
considering alarm for item:0 opticians
 offset:-P1D, which makes alarm time:2006/07/18 08:55:00 UTC
now is 2006/07/17 16:06:06 UTC
alarm is in the future
alarm is too late
considering alarm for item:1 Dentist
 offset:-P1D, which makes alarm time:2006/08/01 08:55:00 UTC
now is 2006/07/17 16:06:06 UTC
alarm is in the future
alarm is too late

^^^These two alarms are appointments I have this week, and I'm not expecting them to go off. The task, "test" does not appear to be listed in sunbird -console on startup?  So is sunbird not examining the task-alarm list on startup at all?

If I then edit the alarm to go off in 7 minutes or so I get:
considering alarm for item:test
 offset:-PT15M, which makes alarm time:2006/07/17 16:15:00 UTC
now is 2006/07/17 16:08:18 UTC
alarm is in the future
adding alarm timeout (402000) for [xpconnect wrapped (nsISupports, calIItemBase,
 calITodo, calIInternalShallowCopy, nsIClassInfo)]

Nothing is displayed in the console window when the alarm actuall fires.

I get
now is 2006/07/17 16:15:21 UTC
test - alarm previously ackd
when I acknowledge the alarm.

--
http://ftp.mozilla.org/pub/mozilla.org/calendar/sunbird/nightly/latest-trunk/sunbird-0.3a2+.en-US.win32.zip
(dated 13-Jul-2006 10:19) gives me the same on my clean machine and won't run up (as described above) on my "dirty" machine.
"clean" log:
same as "official" build

"dirty" log:
(note, the nightly build is *not* running stabley on my dirty machine!)
same as per "official" build:
error creating table cal_calendars -- probably already exists
error creating table cal_calendars_prefs -- probably already exists
*** Calendar schema version is: 5
Starting calendar alarm service
observer added
considering alarm for item:0 plopticians
 offset:-P1D, which makes alarm time:2006/07/18 08:55:00 UTC
now is 2006/07/17 16:25:26 UTC
alarm is in the future
alarm is too late
considering alarm for item:1 Dentist
 offset:-P1D, which makes alarm time:2006/08/01 08:55:00 UTC
now is 2006/07/17 16:25:26 UTC
alarm is in the future
alarm is too late


--

My "clean" version (the last official 0.3a2 download) gives me a similar message:
error creating table cal_calendars -- probably already exists
error creating table cal_calendars_prefs -- probably already exists
*** Calendar schema version is: 5
Starting calencdar alarm services
observer added

(and that's it)

(no mention of my one task alarm that should have gone off, "test").
Interesting!  Does the task in question have both a start and due date or just one?
Just a "Date" (I assume start date).
"Due Date" is not checked, and I have not messed with the entry therein (defaults to about an hour after the start date by the looks of it).

Test repeated on "dirty" machine with due date ticked and == start date:
error creating table cal_calendars -- probably already exists
error creating table cal_calendars_prefs -- probably already exists
*** Calendar schema version is: 5
Starting calendar alarm service
observer added
considering alarm for item:0 opticians
 offset:-P1D, which makes alarm time:2006/07/18 08:55:00 UTC
now is 2006/07/17 17:51:33 UTC
alarm is in the future
alarm is too late
considering alarm for item:1 Dentist
 offset:-P1D, which makes alarm time:2006/08/01 08:55:00 UTC
now is 2006/07/17 17:51:33 UTC
alarm is in the future
alarm is too late

Still no mention of my "test" alarm, although it is displayed in blue in the task list.

Just to see what would happen I let the task completely expire (i.e., progress beyond both the 15-minute-reminder-before-due-date and due date period) by 1 minute or so while I was not running sunbird, no change (except the task is correctly displayed in red).

Oop, I should probably mention I'm using the minimise to tray extension on my "dirty" machine; i am not using anything non-default on the clean one.

I don't really want to fire up the clean machine again unsolicited as its getting kindof time consuming, but if you get back in touch I'll do so if you think it will help.
The bugspam monkeys have struck again. They are currently chewing on default assignees for Calendar. Be afraid for your sanity!
Assignee: base → nobody
I have requested that the bug be considered a blocking bug as http://wiki.mozilla.org/Calendar:0.3_Release_Status cites: "Missed alarms should fire when Sunbird/Lightning is reopened" as a P2 priority for 0.3.  Also changed the component to "Alarms" (although I'm not certain that this is the case, it does seem more sensible than "Internal COmponents")
Component: Internal Components → Alarms
Flags: blocking0.3?
Version: unspecified → Sunbird 0.3a2
(In reply to comment #6)
> I have requested that the bug be considered a blocking bug as
> http://wiki.mozilla.org/Calendar:0.3_Release_Status cites: "Missed alarms
> should fire when Sunbird/Lightning is reopened" as a P2 priority for 0.3.  Also
> changed the component to "Alarms" (although I'm not certain that this is the
> case, it does seem more sensible than "Internal COmponents")
> 
I played around with this bug today and wasn't able to reproduce it.  The only possible variable here might be whether or not the task was completed.  I've included a few changes to the way we search for completed tasks in bug 329985.  I'd recommend revisting this bug after that patch lands, as it may make this bug unnecessary.

If you can get this bug confirmed, it'l block 0.3.  Until then, we can't hold a release for a bug that only *might* exist. -> qawanted.
Flags: blocking0.3? → blocking0.3-
Keywords: qawanted
Confirmed with Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060807 Calendar/0.3a2+.

        Start  Due    Fired
Task A    x     -     No. Nothing shown in console during startup.
Task B    -     x     No. Nothing shown in console during startup.
Task C    x     x     No. Nothing shown in console during startup.

Marking dependency to Bug 329985 per Comment #7. Scheduling for retest.
Status: UNCONFIRMED → NEW
Depends on: 329985
Ever confirmed: true
Keywords: qawanted
(In reply to comment #8)
> Confirmed with Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1)
> Gecko/20060807 Calendar/0.3a2+.
Which provider?

(In reply to comment #9)
> Which provider?
Storage provider.
Test repeated for ics provider:

       Start Due  Fired
Task A   x    -   Yes
Task B   -    x   No, fatal error during startup. See [1]
Task C   x    x   Yes if 'before' alarm is used, No in case of 'after' see [1]

[1]
[Exception... "'[JavaScript Error: "alarmTime has no properties" {file: "file:///D:/Programme/sunbird/js/calAlarmService.js" line: 332}]' when calling method: [calIObserver::onAddItem]"  nsresult: "0x80570021 (NS_ERROR_XPC_JAVASCRIPT_ERROR_WITH_DETAILS)"  location: "JS frame :: file:///D:/Programme/sunbird/components/calICSCalendar.js :: anonymous :: line 788"  data: yes]
Attached patch patch for ics failures — — Splinter Review
Patch for ics failures.  The problem is that |this| doesn't always know that it is a calIItemBase.  So, this check was failing when it shouldn't.

I'm going to suggest spinning the bug about the storage provider into a separate bug, to avoid too much confusion here.  The bug is essentially "Storage provider doesn't return correct tasks when a date-range is specified."
Assignee: nobody → jminta
Status: NEW → ASSIGNED
Attachment #232760 - Flags: first-review?(dmose)
Comment on attachment 232760 [details] [diff] [review]
patch for ics failures

r=dmose
Attachment #232760 - Flags: first-review?(dmose) → first-review+
Patch checked in.  The other bug I referenced has also been checked in, so I'd love to know how we're doing here.  Can we get an update with tomorrow's nightly please?
Retest with Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.9a1) Gecko/20060810 Calendar/0.3a2+:

        Start  Due   Fired on startup
Task A    x     -     Yes (storage and ics provider)
Task B    -     x     Yes (storage and ics provider)
Task C    x     x     Yes (storage and ics provider)

--> FIXED
Status: ASSIGNED → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
verified with
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060823 Calendar/0.3a2+
Status: RESOLVED → VERIFIED
QA Contact: base → alarms
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: