Closed Bug 398931 Opened 17 years ago Closed 17 years ago

sunbird overwrites .ics file via ftp subscription to remote calendar if changes are made externally before sunbird refreshes the calendar

Categories

(Calendar :: Provider: ICS/WebDAV, defect)

Sunbird 0.5
PowerPC
macOS
defect
Not set
minor

Tracking

(Not tracked)

VERIFIED DUPLICATE of bug 329570

People

(Reporter: Lax863, Unassigned)

Details

User-Agent:       Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7
Build Identifier: Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-US; rv:1.8.1.4pre) Gecko/20070614 Sunbird/0.5

If you subscribe to a remote calendar via an ftp connection to a .ics file it works fine so long as the calendar is refreshed just prior to any changes you make to it.  If a change has been made to the .ics file and Sunbird is not refreshed before you attempt to modify the calendar, Sunbird will overwrite all changes it was not aware of rather than switching to read-only mode and waiting for you to refresh the calendar as it should do.  It seems like this could be fixed if Sunbird tagged each .ics file it generated with a transaction ID and it looks for this ID before updating changes it seems like it would solve the problem.  If the transaction ID is different on the server then the one Sunbird knows it uploaded last, or the ID is not there altogether, Sunbird will know that the calendar has been changed since its last refresh by an outside source and would require a refresh before changes are made.  I guess the only case where this fix would fail would be if an application was simply appending data to the end of the .ics file leaving the Sunbird transaction ID intact.  There must be some way to fix this data inconsistency though, because it makes sharing important remote calendars in this manner risky and impractical.  Although WebDev is an alternative many servers, including mine, will not allow it, thus I would love to be able to use ftp in much the same way.  Thanks.

Reproducible: Always

Steps to Reproduce:
1.Make sure your refresh remote calendar preferences are set to a somewhat long period of time to ensure this does not interfere with testing
2.Subscribe to a remote calendar .ics file via an ftp connection
3.Make a change to the remote .ics file by adding an event using a different program.
4.Do not refresh the remote calendar in Sunbird before creating a new event in Sunbird for the same day at a different time than the one created on the remote .ics file.
5.The new event you created in Sunbird will remain locally and be copied over to the remote .ics file while the changes made to the remote .ics file from a different application will be lost.
Actual Results:  
The loss of data if changes are made to the remote .ics file and Sunbird attempt to update this file without a refresh makes truly "sharing" a calendar impossible.  Even if you refresh just before adding an event in Sunbird you still run the risk of the file being modified by an outside source between the time when you refreshed and your changes were uploaded, thus losing all changes made by outside sources.  What then is the point of sharing?

Expected Results:  
Sunbird should have checked for changes and if they were detected handled them by either downloading the changes or switching itself to read-only mode until the remote calendar is refreshed.

It would be even better if Sunbird automatically downloaded the changes first and you lost any changes you just made because at least then you would be aware of the lost data.
Version: unspecified → Sunbird 0.5
Duplicate of Bug 329570 or Bug 373430?
Yes Stefan, you are right.  I looked into the 2 bugs you provided links for and they do speak of the same issues as I brought up in this bug.  Thanks.
Status: UNCONFIRMED → RESOLVED
Closed: 17 years ago
Resolution: --- → DUPLICATE
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.