Wednesday, January 23, 2013

Storing past events on iCal Server

I'm migrating a customer from TeamAgenda to iCal Server, and past events (e.g., events that happens before the migration date) didn't book the rooms and resources associated with the events. After looking at what was the cause, I didn't find anything. So I fired up an email to the ical-server mailing list, and the answer was:

For better performance with data sets that grow over time, we limit what time-range data we cache in the data base, and as a result also limit the allowed range of time-range queries. That is controlled by the "FreeBusyIndexLowerLimitDays" caldavd.plist item which defaults to 365 days. A room/resource will attempt a time-range query in order to check for double-bookings, and that fails because of the lower limit and thus prevents the past bookings. 
If you set "FreeBusyIndexLowerLimitDays" to 0, no limit applies. But I would advise against running with it that way, beyond just doing it for the import/migration.
Might be useful to know that if you are trying to do the same thing.