Jump to content
The Inquirer-Home

DST change reveals stone-age OS routines

Opinion What time is love?
Sunday, 30 December 2007, 11:24

"So if you think that the going gets rough
Just remember...What time is love!
...(I wanna see you sweat)..." -The KLF

SWEAT is what sysadmins have been experiencing apparently after Congress in Argentina approved a law last Wednesday enacting Daylight Savings Time which officially began today, Sunday the 30th, and sets Argentina's time matching GMT-2 -until March 16 when it'll return to the usual GMT-3.

In the only Windows system that I keep running 24/7 on my home LAN, I noticed that Windows Update installed recently a hotfix with the following description: "this update enables your computer to automatically adjust the computer clock on the correct date in 2007 and 2008 due to revised DST laws in many countries".

I assumed that the new code would check countries with new DST savings at a central server and adjust the clock appropriately. This wasn't the case. At 1:00am today, despite being set in the "Buenos Aires, Georgetown" time zone, my Windows XP system continued showing the old GMT-3 time.

alt='xpsp2-dst-hotfix'

Over here, an IT engineer explains how to use an add-on utility dubbed "Time Zone Editor" to create a new "custom" time zone and then over here goes into how to create registry scripts that apply the time zone changes to the registry of several machines on a local area network. But then someone warns against editing the time zone and says it could break Outlook -Isn't everyone running Evolution or Thunderbird?-.

"The workaround to edit the time zone '(GMT -03:00) Buenos Aires, Georgetown' directly can impact customers in Georgetown, country that will not adopt the DST settings defined in Argentina. If are in Argentina and have a company which has a branch in Georgetown, this change would affect them negatively. Or, if you are in another country which has branches in both Buenos Aires and Georgetown? It would also affect them negatively." he says. Concluding that "editing a time zone directly will immediately break products such as Outlook and Exchange. The calendar would be off by 1 hour and there is no easy fix to this."

The big question that nobody has answered is: why bother?. I mean, why should users and sysadmins bother with all this hassle when they're paying for a commercial piece of software, supposedly from the #1 software house in the World, the product of years of *cough* "innovation"?. *cough*. Isn't setting the country the system is in enough for the OS to determine time zone, current DST settings, and other localization options "automagically"?.

Are Microsoft central servers only useful to perform Windows Genuine Advantage checks and product "activation", that is, to preserve the company's bottom line, but they can't detect systems located in a given country, lookup such a country in a central up-to-date database that lists every country and their current DST status, and apply changes to the clock appropriately?. Isn't this the sort of problems that the Internet, XML and computers were supposed to solve, in other words "automation"?.

Going beyond the Vole, why isn't there a "World DST status" central server freely accessible to anyone?. If most countries have their own central "master" clock, why can't, for instance, a U.N. or other international body host such a central server keeping track of DST changes?.

A private firm, Chaos Software Group claims to offer just that, a "complete database (of time zones and DST settings) in XML format and ASCII comma delimited format for easy import or direct use in any custom project development you create." from its web site WorldTimeServer.com but it is available by subscription only, at a fee of about $400 greenbacks per year.

One would think that Sir William Gates the 3rd or quiet whispering Ballmer would have an extra four hundred dollars that they could lend so that Windows system would automagically update Daylight Savings Time changes without having to force users to write and deploy registry-patching scripts, don't you think?.

I can understand that free Linux distros like OpenSuse, Fedora or Ubuntu, being free software, do not offer such a high degree of detail about clock adjustment, after all, people running those distros are likely home users. But what about the people who pay big bucks for commercial licenses with support like Suse Enterprise Linux or Red Hat Server? I think they should be equally outraged, just like Microsoft customers. Finally, since the time zones and changes in DST settings are public domain information, why not go the extra step and mimic what WorldTimeServer is doing for profit, but for the open sauce crowd?. Fedora.org? Mozilla.org, any of the non-profits interested?.

One FAQ on Time and the related network protocols says with regards to Network Time Protocol (NTP): "Daylight Savings Time (DST) is actually not the business of the time server, or of NTP. It is up to the client systems to handle this."

Well, gee, this makes very little sense to me. Perhaps it's time for an " Enhanced NTP" or ENTP that just takes the country as an argument, checks a central database of DST rule changes and sends the up-to-date DST rules -b eginning and end dates- along with the current time?. It should be a matter of enacting a system where, when a country decides to modify its DST settings, they notify this central server, and all the machines throughout the World get the DST data from this server or its mirrors. Is there a reason nowadays why DST tables have to reside at the client and distributed via OS "hotfixes" rather than at a central server on the Interweb?. For desktops at least, this makes little sense.

But I'm not the only one complaining. The folks at WorldTimeServer say: "We needed to calculate current times around the world in order to complete a project. We expected it to be easy -- surely someone, perhaps the United Nations, would have this data available. Instead, we found that no one really knew the right data for EVERY location. We looked in books, atlases, and web sites and found nothing we could depend on. The available resources either avoided areas that were difficult to determine, provided disclaimers that they were "not guaranteed to be accurate" or provided information that was just plain wrong or outdated.". In my Linux systems, I choose to manually set the time zone to GMT-2 and that seem to do the trick, but of course the update is not automatic nor will be the switch back to GMT-3 in March.

While we await for the U.N., the clockmasters of the world, or someone else to fill this need for a central DST database, what is Microsoft's solution to all this?. They put their stellar defender blogger to babble. In a recent post, product manager Alejandro "OpenOffice is more expensive than Microsoft Office" Panicke said the firm "is working internally to create a new Time Zone that reflects the change, but as happens with everything, it will take some time.". No pun intended, surely. But really, as KLF said: what time is love?.ยต

L'INQs
Argentine Congress OKs time change to save energy
Q &A on time and NTP
World TimeZone database (subscription)

Share this:

Comments
Shortsighted government

Perhaps your government should be a bit less shortsighted when passing such laws? Allowing less than a week for patching of affected computer systems is a bit ridiculous.

We went through a similar DST change early this year in the US. However, the law had been passed several months prior to the actual change taking effect, which allowed much more time for patches to be created and for businesses to apply these patches. Not to say that there weren't still issues, but it was a fairly smooth transition overall.

posted by : Jagged, 30 December 2007 Complain about this comment
Should be very easy

Fedora, Mozilla et. al depend on volunteers to build the software in the first place.

So why waste time with almanachs which may by inaccurate no matter how fresh they are, as nobody knows which madman-in-chief changes "times" just for the sake of it, at any given moment.

People living in any given country, or territory always know and know the first.

So if a volunteer system is set up, and somebody at RedHat or Canonical charged with monitoring the submissions, then each time a change in DST is submitted by a volunteer, this person gets notified, verifies the facts and makes official changes in the DST database.

It doesn't happen THAT often that these Open-sorcerers would have to actually pay such person a burdensome full-time salary.

posted by : Vasek, 30 December 2007 Complain about this comment
The problem isn't the OS

Wait a second, the Argentine government decides on 26th December that the timezone for an entire nation is changing FOUR DAYS LATER and you're outraged at the OS vendors? Get a grip!

NTP is quite rightly timezone-neutral, all of its transactions are UTC. Linux and UNIX systems are they same - they all store the time internally as UTC, timestamps on files are UTC, everything is UTC until it's displayed to the user.

Further, having your machine constantly refer to an internet source for timezone information is rediculous. Not every machine is, can, or should be connected to the internet. The timezone information must be part of the operating system.

posted by : Anonymous, 30 December 2007 Complain about this comment
conn

Yea, most of the stuff Windows comes with is not supposed to work or be useful in any way. How will all those companies that sell software for Windows make a bug buck otherwise? Changing the time zone would break Outlook? HAHAHAHA, lool, what can I say, pathetic Vole.

posted by : name, 30 December 2007 Complain about this comment
Better idea

How about we get rid of DST entirely, since we now know that it doesn't actually save energy?

Then we actually would know what time it is, simply going by UTC and the timezone.

posted by : Chris, 30 December 2007 Complain about this comment
Not as simple as a "country" argument

You suggest that an OS could determine a user's country or that an "enhanced" NTP could take a user's country as an argument to allow determining the correct local time.

You seem to be forgetting that many countries have more than one time zone. The US has four, Russia has something like 11 I believe. Additionally, in the US, Hawaii and Arizona don't observe daylight savings time, as well as some US territories.

What's more, in the recent past some counties in the state of Indiana had differing DST policies, and these counties are probably smaller than the total area of the city of Buenos Aries. Even today, in Arizona the Navajo reservations do observe DST while the rest of Arizona doesn't. I'm sure the US isn't the only country in the world with such a complicated time zone or DST situation.

I think you believe that geolocation works a bit better than it really does if you think it can narrow done one's location to the required degree of accuracy. My own IP address maps to a location over 10 miles away, if that happened to be across a time zone boundary line I'd get the wrong time from everything, instead of today's situation where its just the software or devices that are stupid.

Broken software can be fixed. Microsoft may eventually fix their software to solve your problem. Broken design can't be so easily fixed. If we relied on geolocation or an enhanced NTP, there would be a lot of people permanently using the incorrect time!

posted by : Doug, 30 December 2007 Complain about this comment
Pointing the finger to the wrong entity

Fernando, I'm the first on queue to start bashing on MS and their kingdom but give me a break. All of a sudden this bitch we have for a president decides 5 FREAKING DAYS before the actual change that we'll be implementing DST. I mean, this kinda things have to be done within real life timelines, not just a week before. In this particular case, the government is 100% guilty for this chaos, not MS.
I created an idiot-proof guide to fix this mess in a fully automated way (based on an official MS blog). If you care to read it, head to http://www.animeforos.com.ar/general/3489-importante-cambio-de-zona-horaria-en-windows.html

posted by : Esteban, 30 December 2007 Complain about this comment
Hmmm

This website is useful for most basic purposes:

http://timeanddate.com/worldclock/full.html

posted by : Mark, 30 December 2007 Complain about this comment
Irresponsible of Argentinian gov to give 4 days notice of a change of time zone policy

I'm a little surprised that this article hasn't pointed out that it's totally irresponsible of the Argentinian government to give their country (and the rest of the world!) 4 days notice before changing a particular time zone policy.

With Microsoft's monthly patching policy (second Tuesday of the month) and the particular time of the year this was done (inbetween Christmas and New Year when many companies will be on skeleton or no staff in work), the lack of notice is even more scandalous.

BTW, Linux users can test their distro by setting TZ=ART3 - Fedora 8 had an update to their timezone files on 4th December 2007 and even that is still showing GMT-3. I suspect most other distros are in the same boat.

A big slap on the wrists for the Argentinian government (yes, it may have been in draft for weeks, but it's when the Act is actually enabled that matters) for their poor administration on this subject.

posted by : Richard Lloyd, 31 December 2007 Complain about this comment
welcome to the club

sysadmins in the US have been going though this pain over the last year.

it's easy to setup a new timezone file to match your location, what isn't easy is to figure out all the places where times are stored and which ones need to be changed. This is what 'breaks' outlook and exchange. they store the local time in the database for the scheduling and when you look at it you have no way of telling if the time was stored before the timezone file was changed or after. if it was stored before then it needs to be changed, if it's stored after then it doesn't

to make matters even worse, the before and after mentioned above aren't when the exchange server had it's timezone file changed, but when the client that outlook is running on had it timezone file changed.

the right answer is to store the times in GMT and modify them as they are read and queried, but that's not how the software was written

posted by : David Lang, 31 December 2007 Complain about this comment
WorldTimeServer is wrong!

I don't know if you noticed, but over at WorldTimeServer.com the current timezone for Argentina is listed as DST -0400 UTC.
Something tells me that when the guys who make money out of timezones get it wrong, we'll have to wait for a central timezone server.
I'm still waiting for the updated tzdata package.

posted by : Ignacio, 31 December 2007 Complain about this comment
NTP not local time

NTP doesn't deal with daylight saving because it knows nothing of local time--all the times it deals with are in UTC.

Unlike Dimdows, Unix and Linux systems are quite able to stay up to date with timezone changes. That's because they invariably get their timezone data from the Olson database <http://www.twinsun.com/tz/tz-link.htm>, and this is data, not code, so updating it doesn't actually require any code patches.

posted by : Lawrence D'Oliveiro, 31 December 2007 Complain about this comment
No warning!

As far as I can see, the Argentine government announced on 21 December 2007 that the change would take effect from 30 December 2007! That's 9 actual days, but because of weekends and Christmas breaks, only three working days which many people will already have booked as holiday. There simply hasn't been time to develop the rules. It wasn't rolled into the earlier updates because the developers didn't know about it!

As for your server idea, it doesn't help systems that aren't connected to the internet or that are firewalled. Typically if a network gets its time from NTP, it's only one or two servers (e.g. the domain controllers) that do, and everything else syncs to those. This stops the systems getting out of step with each other.

Traditionally Windows simply had a single entry per time zone which said whether DST was in use and information to compute the transition dates (e.g. last Sunday in March, at 2am local). These values would be applied to historical data (e.g. to convert file timestamps - NTFS stores in GMT). These updates - or possibly XP SP2 - add the ability to have historical DST data as well.

posted by : Mike Dimmick, 31 December 2007 Complain about this comment
Use the Timezone Database

As you note, there is no centralized timezone database maintained by a government agency. Instead, the TimeZone DB (http://www.twinsun.com/tz/tz-link.htm) is updated by hundreds of volunteers around the world.

Governments fail in two ways: 1) They fail to report timezone changes in any standard way or place. Thus, many timezone changes are discovered after the fact. 2) Governments fail to recognize that it does take time for timezone changes to propagate to all affected parties.

The same problems occur for currency changes, but they occur much less frequently.

posted by : anonymous, 01 January 2008 Complain about this comment
Actually, there is already a solution

Better idea... why doesnt the whole world just switch to UTC? Its already there, and already widely supported. This switch has already happened in the scientific and military communities; its going to have to happen in the civil sphere one day. Why not now?

posted by : aka the Timelords, 01 January 2008 Complain about this comment
Advertisement
Subscribe to the INQ Newsletter
Sign-up for the INQBot weekly newsletter
Click here to sign up Existing user
Advertisement
INQ Poll

Windows 7 impressions

How is windows 7 working out for you?