All,

I number of issues have been reported during the past few days when sharing and synching calendars on the Cosmo Demo server. This email is an attempt to summarize the issues, what we know so far and what is being done to fix them. We are aware that these problems are preventing some people from dogfooding the application effectively.

Currently an event is stored on the server in 2 parts, an XML piece and an ics piece. Something is happening to cause the XML portion to be written to the server correctly but the ics portion fails. This creates a somewhat half-baked event that generates weird errors for the publishers that write these events to the server and for other subscribers whom are synching and getting these changes.

There are a few ways this situation could happen.

1. We can run into a network error or cancel during a synch operation.
2. The VOBJECT fails to generate an ics file (Chandler issue)
3. We have a valid ics file but for some reason Cosmo cannot write this to the server.

After much research on the part of Morgen, Jeffrey and Brian Moseley we have identified that case #3 is indeed happening. Cases #1 is possible and #2 happens sometimes but may be related to #3. We have determined that the ical4j library that Cosmo uses to parse iCalendar is not translating some events correctly that have timezone information in a particular format. This has something to do with the way timezone information is stored in iCalendar format. According to the RFC, the format is valid but when we import these events into Chandler then export of share to the server, Cosmo can't translate the ics information.

The fix for #3 is to upgrade the ical4j library on Cosmo to the next version. Apparently the next version handles timezones different and this will not be a problem. Brian Moseley has done this and we are now in the process of getting a build to Aparna for QA. Once validated, we will have Jared update Cosmo 0.2.2 onto the Cosmo Demo server. We expect to log the ticket for Jared to update Cosmo Demo early tomorrow...maybe this evening.

PLEASE NOTE: We will be creating a new instance on Cosmo Demo for 0.2.2. therefore you will have to republish your calendars onto the server again.

Morgen has also added a fix for Chandler that causes these 1/2 baked events to be skipped when we encounter them when synching. This partially handles unexpected cases like #1. This means that if I publish an event that ends up in this 1/2 state any client that synchs with this calendar will not see this particular event. We realize this creates inconsistencies but felt it was necessary to handle this as best as we could. Our goal was to at least prevent other sharers from synching with these corrupted events.

In addition to all this, we have experienced a Cosmo "out of memory" that we haven't tracked down yet. We are working on getting the proper tools to analyze the code. We also encountered a scaling problem where Cosmo would only write so many files then stop. Apparently jackrabbit was hitting the operating system's limits on the number of child files/directories within a parent directory. We would end up in a situation where we had to wipe all the data. Brian M implemented a fix last week which is part of Cosmo 0.2.2.

Let me know if you have any questions. Brian M, Morgen, Jeffrey - feel free to add any additional details you think are missing.

Sheila

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

Open Source Applications Foundation "Dev" mailing list
http://lists.osafoundation.org/mailman/listinfo/dev

Reply via email to