Time Zone Changes for 2007 and ZCS
2007 brings changes to time zone definitions for several countries, including the United States, Canada, Bermuda, and Australia. When an appointment is created it includes the dates to adjust for daylight savings and the offset from GMT. Appointments created with 2006's daylight savings transition dates will be incorrect for display of appointments in 2007 during the time where the offset from GMT is different for the two years.
Let's take the United States as an example. In 2007 daylight savings time starts 3 weeks earlier and ends 1 week later than it did in 2006. During these 4 weeks, recurring appointments created with the 2006 rules will be off by 1 hour. Also, single-instance appointments created using the 2006 rules for these 4 weeks will be off by an hour. Appointments that occur in the other 48 weeks of the year (including recurring appointments) are not impacted by the change since the 2006 and 2007 rules are the same for these weeks. A lot of the following text states "the appointment will display incorrectly". The incorrect display will occur only during these 4 weeks.
The 4.5.2 release addresses these changes and also provides a server-based migration utility to change appointments created with pre-2007 time zone rules to 2007 rules.
Microsoft has provided an excellent article  describing the changes and how they impact its OS and products. We recommend all admins read it.
Before we go into the ZCS time zone behavior in 4.5.2, we should look at what the OS vendors have done to address these issues.
- Microsoft has issued a patch for Windows XP relating to KB article 931836. This patch updates OS time zone definitions for 2007. The patch does not change existing appointments in either the ZCO or the Zimbra Server. Microsoft has made this a mandatory patch, but the desktop must be configured to automatically download and install the patch for the user to get it with no other action.
- Windows Vista shipped with the 2007 time zone definitions. This means that it is unnecessary to patch it.
- Apple included 2007 time zone definitions in OS X 10.4.6.
- Novell/SUSE and Red Hat have both provided patches for a variety of their offerings. IBM has produced an overview of Linux time zone issues that is well done and includes links for Linux fixes.
- Red Hat has a KB article for this.
As you will see in the coming paragraphs, you must upgrade your desktops to these patch levels in order for time zone handling to work properly with ZCS 4.5.2. You can upgrade to ZCS 4.5.2 prior to deploying these patches to all of your desktops. However, for appointments to work correctly in these few weeks the OS patches must be present.
The sections below refer to "the OS time zone patch". This phrase refers to a patch provided by your OS vendor for the desktop computers of your users. It should be interpreted based on your OS. In summary:
- For Windows XP, it is the patch associated with KB article 931836.
- For Windows Vista, it is bundled.
- For Mac OS X, it is version 10.4.6 or later of the OS.
- For Linux, it is the updating of the zone info, which can be done independent of version.
With 4.5.2 the server will not adjust the start time of existing appointments that occur in time zones that it recognizes when the appointment is accessed (this is a change from 4.5.1 where the start time was modified at access). However, 4.5.2 does include a time zone migration script, zmfixtz, that will do as much as possible to correct 2006 appointments on the server. Unlike the dynamic changes done in 4.5.1, the changes done in 4.5.2 via zmfixtz permanently modify the appointment.
zmfixtz Purpose and Usage
Starting with 4.5.2 the server includes zmfixtz, which can be used to modify appointments that have pre-2007 time zone definitions to use those from 2007. Generally, the server will be able to fix appointments created by the web client, Zimbra Connector for Outlook, and Zimbra Connector for iSync. It will not be able to fix appointments created by Zimbra Mobile.
The goal of "fixing" an appointment is this: Users with the OS time zone patch will not have to manually modify their appointments to get them to display correctly during these few weeks. On systems with the OS time zone patch, the appointment will display correctly during the few weeks where daylight savings time is different believe that appointments with 2006 time zone definitions will enter your system even after you have run zmfixtz the first time. That is, if you will continue to have users without the OS time zone patch creating appointments, you will want to run zmfixtz periodically (perhaps every week).
zmfixtz will NOT be run automatically by the install and upgrade scripts. You must run it by hand. We recommend that all admins in affected areas (see below) run it at least once soon after upgrading to 4.5.2. In our tests on large mailboxes, we have seen approximately 10 minutes of run time per 1000 users. The script does not interfere with other operations on the server, so you can run it at any time.
zmfixtz should be run as the zimbra user. It should be run on each mailbox server. zmfixtz can be used on single mailboxes, but we recommend running it across all mailboxes.
The command tells the server to start the migration, but does not wait for the migration to complete. You can track progress of the migration by watching for CalendarTimeZoneFixupThread in /opt/zimbra/log/mailbox.log.
The command that you need to issue varies by your location.
Users in the following countries, United States, Canada, Brazil, Egypt, Israel, and Iran, should run this CLI command:
zmfixtz -a all
Countries that continue to use the identical time zone rules in 2007 as the United States used in 2006 should not run this migration tool. (One example is Mexico)
Australia-only. For the Western Australia timezone (GMT+8 timezone), run the following CLI command:
zmfixtz -a all --country AU
This command should not be run in other GMT+8 countries such as China.
Web Client Users
Appointment Creation Without the OS time zone patch, appointments will be created that will be incorrect during the time period where the 2007 time zone definition is different from the old one. Note that these appointments will be fixed by zmfixtz when it is run.
With the OS time zone patch, the appointment will be created with a time zone definition that is correct for 2007.
Appointment Viewing With 4.5.2 existing appointments will be changed when you run zmfixtz. This will cause the appointments to contain the 2007 time zone definitions regardless of whether or not the patch was applied to the viewer's desktop. This means that the appointments will display correctly for users with the OS time zone patch, but incorrectly for users without the OS time zone patch.
For all users, we recommend that admins update their users' desktops with the OS time zone patch before the upgrade to 4.5.2. Here are the alternatives:
Applying the OS time zone patch before upgrading to 4.5.2
With the patch and the 4.5.0 (or previous) release newly created appointments will reflect the 2007 time zone definition. The string identifier (e.g., GMT-0800, US/Pacific) will be incorrect, but the transition dates will be correct. Thus the appointment will display correctly in users' calendars. We regard this issue as a cosmetic annoyance, but not an issue with data.
Applying the OS time zone patch after upgrading to 4.5.2
Without the OS time zone patch and with 4.5.1 or 4.5.2, newly created appointments will conform to the 2006 time zone definition. These appointments will render incorrectly for all users with the OS time zone patch until zmfixtz is run. After that they will display incorrectly only for those users without the OS time zone patch.
Zimbra Connector for Outlook users
zmfixtz changes will be synced to Outlook. Users should still install the patch from KB article 931836.
We do not recommend that users run the Outlook Time Zone Data Update Tool. zmfixtz will perform the same set of changes and will enable the changes to be propagated to all clients. There is no harm in running the Outlook Time Zone Data Update Tool if a user chooses to do so.
The point of installing the OS time zone patch for these users is that newly created appointments will be correct. Newly created appointments will be incorrect until the OS time zone patch is applied. Note that zmfixtz will fix these appointments, but as long as the user does not have the OS time zone patch the appointment will not display correctly.
Zimbra Connector for iSync users
Generally Mac users that are running 10.4.6 will have their appointments automatically adjusted for 2007 time zone changes and they do not need to do anything more.
There are some cases where appointments will not display properly. For example, as noted above, if a web client user on a system without the OS time zone patch sends out an appointment with 4.5.2, that appointment will display incorrectly on the Mac.
Zimbra Mobile users
Our research suggests that most devices' calendar applications are using 2006 time zone definitions. Microsoft has provided a patch to address this issue. It is available at http://www.microsoft.com/windowsmobile/daylightsaving/default.mspx. Note that at least on the Treo700w, you have to have "Use Network Time Zone" unchecked in order for the patch to work correctly.
Appointment Viewing Appointments that exist in the device and were created with the 2006 time zone definitions will display incorrectly. With zmfixtz, the admin can update these appointments on the server. This will cause the client to bring down the changes to the appointments, and they should then display correctly if the device has the time zone patch. If the device does not have the time zone patch, the appointments will display incorrectly.
The REST interface always returns the server's view of the appointment. This means that existing appointments will be returned with 2006 time zone definitions until zmfixtz is run (or the appointments are recreated on a system with the OS time zone patch).
Server Patch Level
We recommend that you update your server with the appropriate OS time zone patch. Please see the OS Vendors section above for the appropriate source for the patch.
Server Java Environment The required version of Java will be achieved if the above updates are performed.