Open Bug 748330 Opened 12 years ago Updated 3 years ago

Modifiy Event Repeat with distant future end creates hundreds/thousands of events

Categories

(Calendar :: General, defect)

Lightning 1.4
defect

Tracking

(Not tracked)

People

(Reporter: lotsofjunk, Unassigned)

References

(Depends on 1 open bug)

Details

(Keywords: perf)

User Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)

Steps to reproduce:

I went to update an event and change the end date.  I also try to add a new event with a repeat option.


Actual results:

When I updated the end date on my event, thunderbird stoped responding and cashed.  I started in safe mode via command prompt and disabled lightning.  
Thunderbird would now start, but when I enabled lightning, it would stop repsonding again.

The current vesions of Ligtning really suck!!!   I have been using Sunbird, since .1 and this version is a gaint leap backwards.  I am really considering converting back to M$.

I had to use mozialla backup to re-install a previous calendar to get thunderbird to work corretly.

Also when I create a new event and select repeat, it schedules thousands of events on every day, regaurdless of the opitons I select.

I beleive this is why thunderbird stops responding, is that it is creating millions of events.

I was using version 1.3 updated to the development version 1.4 in hopes of this bug being corrected. 

No luck, it has the same bug.

If I schedule an event without any repeat option, it appears to work correctly.

This is a major bug and should be fixed to prevent data loss.


Expected results:

The event end date should have been updated and thunderbird should work correctly.
Severity: normal → blocker
Priority: -- → P5
Maybe you confused the end date of the event with the until date of the recurrence rule? The latter is specified in the custom recurrence dialog. The former defines the duration of the master event. If you create an event that has a duration of weeks/months and set it to repeat e.g. daily than you will see multiple event occurrences on the same day because the individual occurrences overlap.
No, I am not confused, this happens with either the end date or repeat until date.  If I select monthly, it creates a daily event.

If there is no end date, thunderbird stops responding.
Maybe I don't understand you correctly. Could you please describe step by step in detail what you do, what you click, what you enter, etc.? Or maybe add a screenshot showing the informations in the event dialog, the recurrence dialog, ...

What type of calendar do you use? One of the built-in calendar types? Or a calendar type added by some other extension? Do you see any error or warning messages in Tools > Error Console?
Open, Thunderbird 12.0
Open, Lightning 1.4
Right click on any day in the calenday
Select New Event
Select End date, 1 Year from current date
Select Monthly from the Repeat
Select Save and Close

From this point, I would expect to have a monthly event in the time frame selected.
Now I have a years worth of daily events and every month, it adds additional daily events until the enire calendar is filled with events.
Based on this description I see that my assumption in comment 1 was correct. 

What you did is the following: You created an event. The first occurrence of the event starts today and has a duration of one year, i.e. the event last from 2012-04-28 to 2013-04-28. Therefore Lightning draws an event box on every day in that duration. In addition you set it to repeat monthly, i.e. the 2nd occurrence will last from 2012-05-28 to 2013-05-28, the 3rd occurrence will last from 2012-06-28 to 2013-06-28.

Most probably you wanted to create an event that only happens on 2012-04-28 and then repeats on 2012-05-28, 2012-06-28, ... For this you need to set start and end date to both 2012-04-28 to create an event with a duration of 1 day or few hours. Then set it to repeat monthly. By default the event will be repeated every month forever. Choose Custom... in the Repeat dropdown if you want to limit this.
Severity: blocker → normal
Yes, it looks like you duplicated the bug, this is not a custom event, it is a monlty event in the date range selected.

Why have a date range with a montly selection,  if it is custom, all the event that are not a single event would be custom.

This bug will cause the calendar to crash depending on options and date range.
Severity: normal → critical
Keywords: hang
Priority: P5 → --
Perhaps santity checking could be done on End date.

Or, would it make sense to change the UI to show Time before Date so that the user is less likely to change the date, which I should think RARELY needs to be changed?
Severity: critical → major
Flags: needinfo?(merikes.lists)
Keywords: hangperf
Summary: Modifiy Event Repeat cause crash and thousands of events → Modifiy Event Repeat with distant future End creates hundreds/thousands of events
I'm a bit confused here why you needinfoed me specifically but here goes.

To me it makes sense to put up a dialog when recurrence creates overlapping events similarly to how Google does it on calendar.google.com. So for weekly repeat anything more than 7 days would be questioned. For yearly anything more than a year and so on. Coming up with a maximum for custom recurrence might be harder.

I don't have a preference what should be the options user is given in the dialog. Google does three of them: you can continue editing, change to a single event or go ahead and accept creating lots of overlapping ones. Two would be minimum here, offering changing to single event isn't strictly necessary.

Helping users not shoot themselves in the foot seems like a good idea.
Flags: needinfo?(merikes.lists)
Simply warning the user that he/she is going to set recurrences with duration longer than the repetition interval could be the right approach.
The message in the warning could also be particularly dissuasive with combinations of repetition and duration (e.g. this one reported here: monthly + year) that cause many overlapping events.
There is bug 350463 for this.

After the warning, if the user wants to shoot himself in the foot, he/she can do it since those events are allowed.
Component: Lightning Only → General
Summary: Modifiy Event Repeat with distant future End creates hundreds/thousands of events → Modifiy Event Repeat with distant future end creates hundreds/thousands of events
Severity: major → S3
Status: UNCONFIRMED → NEW
Depends on: 350463
Ever confirmed: true
You need to log in before you can comment on or make changes to this bug.