'Daylight Savings Bugs' Loom 403
An anonymous reader writes "ZDNet has front page coverage of the looming daylight savings changeover, and the bugs that may crop up this year. With the extension of daylight savings time by four weeks, some engineers and programmers are warning that unprepared companies will experience serious problems in March. While companies like Microsoft have already patched their software, Gartner is warning that bugs in the travel and banking sectors could have unforeseen consequences in the coming months. ' In addition, trading applications might execute purchases and sales at the wrong time, and cell phone-billing software could charge peak rates at off-peak hours. On top of that, the effect is expected to be felt around the world: Canada and Bermuda are conforming to the U.S.-mandated change, and time zone shifts have happened in other locales as well.'" Is this just more Y2K doomsaying, or do you think there's a serious problem here?
Things you should know. (Score:5, Informative)
A year ago, after most of Indiana went through its first timezone change in 40+ years, we found out that it presented a few problems in Linux, I tried to post a story to Slashdot about it to warn other people in the US that they would be dealing with this problem later when the rest of the US changes to the new DST. I tried several times to post it and they were all rejected.
Basically, you need to make sure that if you change your timezone data on your system that you restart everything, otherwise when the time does change, some programs continue to use the old timezone data and are an hour off.
Re:Things you should know. (Score:5, Funny)
Re: (Score:3, Informative)
Re:Things you should know. (Score:5, Interesting)
15 minute change window to apply patch, another 15 minutes to reboot successfully and come back online. Multiply 30 min x 1500 = 45,000 minutes, or 750 hours. But we only have one weekly change window, Sunday mornings from 2-6am. Assuming finite number of staff, contingency (there's always going to be some problems), etc... we started last September. We might just make the deadline.
So yes, I think its a bit of a problem. There's also the unspoken assumption that people learned their lessons during Y2k and have sufficient date handling logic to address changes to DST...nothing hard coded in the underlying applications.
Re:Things you should know. (Score:5, Insightful)
Yeah that sounds about right if you do each machine one at a time. I should hope a datacentre is a little more efficient than that.
Re: (Score:3, Informative)
Amen!
Seagate [seagate.com] and Peregrine/HP [peregrine.com] have some really nice, robust, Data Center Management software for managing 10s, 100s, or even thousands of computers and the software on them... you can push, say, SP2 to all 5000 machines, and it's like a few clicks to do it.. and it takes care of everything! Then you check the error report, etc. to make sure that none of the known machines encountered an error (or were turned off at the time), and then you address them individually...
With the # of servers that you a
Re: (Score:3, Insightful)
Applying the patch to systems in batches is totally reasonable (if something goes wrong, you limit the number of explosions you're dealing with at any one time). Doing them all by hand, one by one, is totally insane.
Re:Things you should know. (Score:4, Funny)
> online. Multiply 30 min x 1500 = 45,000 minutes, or 750 hours
Yeah, someone needs to tell my local cinema about that. They only show films for a few weeks, but with 1000 people in each showing, and the film lasting 90 minutes, that's 90,000 minutes, or nearly 9 weeks! There's going to be a lot of disappointed people...
Re: (Score:3, Informative)
The Sun JRE updater has to be run on each installed version of the JRE. Remove the old ones? Not a chance - could break an app. What about 1.3, well, you're SOL.
IBM thought they were brilliant with their 1.4 & 1.5 implimentation - They roll the ZI info into the Core.JAR file. No one will monkey with it there. Their updater u
Re: (Score:3, Insightful)
Programs should handle and store dates in UTC, and convert to the local timezone only for display.
Re: (Score:3, Informative)
Re:Things you should know. (Score:4, Interesting)
Most programs that use the standard C library do use UTC and just don't realise it. The most important thing to realise about daylight savings time is that Time isn't changing. The sun still rise the after DST as before DST (astronomical adjustments due to Earth's heliocentric orbit not withstanding). But, how we read the clock is changing.
I heard one company just say, "we're going to just change the clock on the computer." This makes me cringe.
All file time timestamps on all versions of UNIX and versions of Windows derived from NT store times as Julian seconds since 1970-01-01 00:00:00 GMT. Changing the system clock means that the times will be stored wrong even though they display properly in the local timezone.
Other places to watch out for are applications that manage their own timezone data. Java is a prime example. Major database vendors would be another.
Re:Things you should know. (Score:4, Interesting)
Windows has no knowledge about timezone history. It translates the UTC time to local time using its current time-offset, which depends on the current DST status only.
So, when you now look at a file timestamp (in the GUI) that you created last summer, you will find that its time is one hour off.
Even when Microsoft would finally fix this (they consider it a feature rather than a bug), they would probably not fix the historic aspect.
I.e. now that the beginning of DST shifts one month, and you would look at a file created last year in that one month window, it would probably still be off.
Timezone handling in Windows just sucks. It does not have to be that bad, it works fine in Linux (including historic changes). Microsoft just has decided to make a bad implementation and then never fix it, in the name of backward compatability.
Not that simple. (Score:3, Interesting)
It would be nice if it were that simple. Take, for example, a cell phone billing system since that is referenced in the article. When bill processing happens, the actual time of the call needs to be on the bill. Customers wouldn't be too happy if all the call times were in GMT, would they? So the GMT values stored in the database need to be compared against a table that tells it what offset to apply to the time, based on the time and date the call was made. If that table isn't updated with new start and end
Re:Things you should know. (Score:4, Insightful)
Re:Things you should know. (Score:5, Funny)
MS-DOS is the same way. Apple ProDOS too.
-1 False (Score:3, Informative)
Windows is stupid in a whole lot of ways. But it is not utterly lacking in basic requirements like time handling.
y2k = media working for once (Score:5, Insightful)
Its like you're driving along and there's a huge backup for miles because of an accident in the middle of the road after a bend. Now this huge backup may have slowed you down and made you aware that there was a problem. If it was just you and the wreck, you may have plowed into it if you weren't paying attention.
Same thing with this hype. We should tolerate the hype because the heightened coverage will get bosses talking to programmers about fixing the software, and it'll turn out to be nothing.
Mod Parent Up (Score:3, Insightful)
Absolutely.
Most people look back at Y2K as fear mongering. Nothing catastrophic happened, therefor it was all a media hoax. BS. Nothing happened because it an urgent fear while there was still enough time to fix it, and alot of people put alot of effort into getting all the critical software patched.
Re: (Score:3, Interesting)
Since the only people who really know about it are the people who made money out of it, it's hard to accept a claim of "we all just did our jobs and saved the world."
Re:Mod Parent Up (Score:4, Interesting)
We spent millions of dollars for all new systems, and thousands of hours in planning, procurement, implementation, and testing. We literally pushed all the boxes on the datacenter floor to the wall and built anew.
It was a horrendous chore, and I didn't get to spend New Year's with my family.
Perhaps we should have let you all freeze in the dark.
Re:y2k = media working for once (Score:5, Informative)
The DST thing is pretty evil too because it's usually up to runtime stacks like Java and CRT to decide on the timezone and time. If they give you the wrong time you're screwed. For the most part you might be okay if everything resolves down to some registry entries or timezone data files but that isn't always the case. There are functions such as Microsoft's _tzset() which are HARDCODED to a particular behaviour and apps that link to the CRT or have their own DLLs will be broken unless you recompile them.
Re:y2k = media working for once (Score:4, Funny)
Changing daylight savings time or y2k will be childsplay compared to the Year 2038 32-bit time_t overflow [wikipedia.org]. That is a really big problem with no easy fix. 32-bit times/dates are in everything from VCRs and microwaves to servers and desktops. 2038 will be everything that Y2K wasn't.
In principle, Linux and friends can fix this by redefining time_t to 64-bit - but lots of communication protocols and even file formats like tar use 32-bit dates. Admittedly we have 30 years to fix it, but we will need all 30.
Re:Y2K was an oddity and mis-explained (Score:5, Interesting)
What you are completely ignoring is that the vast majority of the code that had to be examined and patched was written in COBOL. COBOL that store dates as a string of six digits. Digits that were stored in many cases as EBCDIC characters, not hexadecimal integer values. And just to make it fun, in some cases the source code was not available.
"[A]nyone that created a four digit date by String Concat: "19" + String(date) would " probably not have been born yet when the programs that needed to be fixed were written. It wasn't the programs that were written in the 1990's that had to be dealt with, it was the ones written in the 1960's. And if you don't believe there were any of those in use, then I suggest you have no idea what's really happening at your bank. Or in the US air traffic control system, for that matter.
rates? (Score:5, Funny)
and cell phone-billing software could charge peak rates at off-peak hours
Aiyeeee!!!!!!!!!!!!!
Re:rates? (Score:5, Insightful)
Everyone wants a credit when they are over billed, but no offers to give money back if they are under billed.
Re: (Score:2)
Well duh.
That's because when you're overbilled, it's their fault.
And when you're underbilled, it's their fault.
Wait a second...
I see what you did there.
/Actually, it has to do with consumer protection laws, which is why businesses have to eat their losses when they underbill & give you back money if they overbill.
Amazon (Score:3, Funny)
Tell that to Amazon [slashdot.org].
Re: (Score:3, Insightful)
Why always the worst case is the one presented? They are equally likely to charge you off-peak rates during peak periods.
Re:rates? (Score:4, Insightful)
Re: (Score:2)
Maybe. This bug would cause some evening off-peak calls to be treated as peak calls (a 9:01 PM off-peak call is treated as an 8:01 PM peak call). On the other end, it would also cause some morning peak calls to be treated as off-peak calls (an 8:59 AM peak call is treated as an 7:59 AM off-peak call). I'd bet that more people are making evening calls than morning calls.
it is a real concern (Score:2, Informative)
Mod Freakin' Parent Up (Score:3, Insightful)
Sadly, I think those of us that are of this opinion will be once more proven correct, but will be ignored after the immediate problems have been resolved.
A site that will give you USEFUL Info..... (Score:5, Informative)
http://www.reganfamily.ca/dst/ [reganfamily.ca]
This is likely more useful than the original article. It has resources for everything from Blackberries to UNIX.
Not such a big deal (Score:3, Interesting)
The majority of our applications just go off of the OS time, so as long as the OS is patched, everything else is fine. The DBA's will be coming in over a weekend to test the patches on the Unix servers, and the Server guys will be doing the same for the Windows servers, but other than that, there's not that much we have to do.
The financial industry will probably have more problems than most, but still, it should be negligable compared to Y2K.
Re: (Score:2)
Re: (Score:3, Informative)
So THAT'S what's going on! (Score:2)
I knew it. All this smokescreen around energy savings is just a cover story.
Naturally Microsoft is behind the change. It's all part of their master plan to move people off of legacy OS's, or bleed dry everybody else.
How did I not see this before? Their tentacles are spreading ever further.
Re:Not such a big deal (Score:5, Informative)
There is a freeware utility to apply the DST patch on Win2K machines here [intelliadmin.com] (as a bonus, it also supports WinNT).
Note that you may also need to update the Java JRE/JDK.
Re: (Score:2, Flamebait)
I know exactly what you mean man! Why, just the other day, I took my 2000 Dodge Ram into the dealers because they changed the rules where I live regarding ground clearance, and the fuckers expected me to PAY for them to fix it!?! What's up with that crap? I mean, the truck is only 7 years old, they should TOTALLY still be doi
Re: (Score:3, Insightful)
Ahem, Not Exactly (Score:5, Informative)
Ahem, not exactly. No patch for the perfectly good Exchange 5.5 server we're using with Outlook 2000. Suddenly we have to update to the latest Exchange and Outlook 2003 on every d@mn desktop. And I'm in Arizona were we don't even have daylight savings time!!!
Re: (Score:3, Informative)
Re: (Score:2, Informative)
This article says Outlook 2000 is fine as long as the OS is patched: http://support.microsoft.com/gp/dst_topissues [microsoft.com]
This article discusses how CDO is the only reason Exchange needs to be patched: http://support.microsoft.com/kb/926666 [microsoft.com]
The Outlook appointment tool is here: http://support.microsoft.com/kb/931667 [microsoft.com]
The Exchange server version is here: http://suppo [microsoft.com]
Re: (Score:2)
Re: (Score:3, Funny)
Bite your tongue!
Cool (Score:5, Funny)
You're a year off, (Score:2)
Re: (Score:2)
Re: (Score:2)
Doomsaying? (Score:4, Insightful)
However, because of the perceived simplicity of the fix, there is a real possibility that some companies waited too late to address the issue and may not make it in time. This may cause minor glitches, but it's not like the nukes are going to start flying.
As for Y2K, obviously the people who were stockpiling ammunition and moving to the mountains were nuts, but there were real problems that could have occurred that did not because of the countless hours that were put in to fix the issues. It drives me crazy that after we spent millions of dollars and countless man hours fixing buggy code for Y2K, people look back and see that nothing happened and think all that money was a waste. If all that effort had not been expended, more computer systems would have had problems, and so the money was definitely not wasted. During Y2K, there were scattered reports of various computer systems crashing. It is likely there would have been many more such reports had we not taken the steps we did to address the issue.
God, I hope not (Score:2)
Similar (Score:2)
I work at a very large company, and we're seeing a level of effort almost as big as the Y2K remediation, only on a much shorter timeline.
This is a typical government screwup:
1) create a solution to a problem that doesn't exist
2
Bermuda? (Score:3, Insightful)
Re: (Score:3, Informative)
"Bermuda is farther north than Caribbean destinations. Located in the Atlantic, Bermuda's latitude is equal to that of North Carolina. " [planetware.com]
Already has ramifications (Score:5, Interesting)
Re: (Score:2)
In general, I don't understand how people let this become a problem. The DST dates have already changed a couple of times within my lifetime, so I would never hard-code such a thing. This upcoming change has been scheduled for almost two years now, so every OS should have had this update in place long ago. Every app should be querying the OS for timezone info instead of hard coding it. How can
Get rid of daylight saving altogether (Score:5, Insightful)
Re: (Score:2)
Herding cats (Score:5, Funny)
Not a chance (Score:2)
If i was paranoid i'd probably say this is a scheme to create jobs and make money.
I've been programming for 10 years now and programs don't generate their own time. well, I never created my own clock anyway, i don't see any need for it.
Whatever daylight saving changes do they are applied to the system clock and programs uses system clock. why would it matter when the OS decide
Re: (Score:2)
It shouldn't. You are right about no application having to deal with current time. They only ask the underlying OS "What time is it? and the OS answers "It's XX:YY UTC now"; that's all. And, ho and behold, the UTC second that follows the second prior to a daylight saving change is still one UTC second later, no time drift at all.
Except, of
Temps Atomique International (Score:2)
Old OSes and Old JREs are the biggest concern (Score:5, Insightful)
Okay, so all system processes should use UTC. We all know that. Users don't set their watches to UTC though.
Want a DST patch for Solaris 8? RHAS 2.1? Windows NT? You're going to have to shuffle and maybe you'll need to update the timezone files with 'zic' yourself. Have hundreds or thousands of these machines. Sucks to be you.
Oh, and the big killer is that Java has timezone rules embedded in it. That's right. Java VIRTUAL MACHINE. Java tracks timezones and DST changes INDEPENDENT of the OS since Java wants to be it's own OS.
So, if your company standardized on j2ee when you moved off the legacy systems for y2k, I'll almost bet you that the OS those java apps are running on won't have DST patches from the vendor, and your apps could have multiple JVMs that contain the wrong DST rules. You'll need to fix both of those if your java apps have anything to do with timezones and if you care about the times displayed.
I'd really like to get a list of everyone who voted for the 2005 dst timezone changes and start a movement to make them take responsibility for the huge business cost of their stupid legislation. It has to be 100X the cost of what they expected the changes to save...
A round of applause for the tz guys (Score:3, Informative)
If you're a Firefox person, FoxClocks (see my URL above) puts nice little world clocks on your statusbar. And yes, it uses tz too. Thanks guys. Andy
I'm not gonna go any more. (Score:2)
Re: (Score:2)
Worse than Y2K because of Java (Score:4, Funny)
There are nearly 50 java instances on some of our hosts. The filthy little bastards hide everywhere.
Fortunately the fix can be automated and is very fast to install.
Using java's extensive built-in patch management and version management capabilities, of course.
UTC (Score:2)
What about NTP? (Score:2)
NTP uses UTC (Score:3, Informative)
So you need to patch unless you don't care about your clocks being off. Or you're in an area unaffected by recent changes.
I notice (Score:2)
NTP for Everyone (Score:3, Interesting)
This function is too important to leave to corporations that have demonstrated they upgrade themselves in their own interest only when it's a years-long campaign that everyone talks about. So it's time to automate the process. Otherwise, Americans and others in the global economy will pay much higher costs in damage and loss later, cleaning up the mess.
buy your water and duct tape now! (Score:2)
No big deal if you don't update... (Score:4, Insightful)
Local Time vs. UTC (Score:2)
Apple (Score:3, Informative)
Nightmare (Score:2)
daylight savings time is stupid (Score:4, Interesting)
but why does that mean that time has to be shifted twice every year? why not just shift time by an hour once, just one time, and be done with the nonsense forever? why is it necessary to go back to "real" time in the winter?
heck, sometimes i think we should redefine 6 am as 3 am. then everyone wakes up and goes to work in the middle of the "night", and, after work in the summer, you have daylight until midnight!
we're dealing with an abstract concept here. we can do whatever we want with time. we don't have to abide by some weird need to swithc back to "real" time in the winter. just shift it once in favor of farmers/ after work barbequers and be gone with it. it's just so stupid and pointless and a waste of effort to constantly shift back and forth
When I'm Benevolent Fascist Dictator (Score:3, Funny)
Remember you'll never have to reset your wrist watch again. NEVER. And when gets a
Re: (Score:3, Informative)
Re:daylight savings time is stupid (Score:4, Interesting)
There's also some notion that in the modern world DST actually increases the country's energy consumption. DST was originally conjured up in a world where the bulk of the energy consumption came from lighting. In that world, giving people daylight at certain hours of the day reduced their need for artificial light. In our modern world, however, things aren't that simple. For one, we have lighting that uses less energy than before. But the biggest difference is that we now have air conditioners, something that uses significantly more energy than our modern lighting. In the modern world, by ensuring that there is natural light when people get home from work, we increase the likelyhood that they will need to use their air conditioners.
So, we really have no idea whether DST actually serves its purpose anymore or if it's merely an unecessary inconvenience for any modernized country. This year's change in the time that DST goes into effect will give us a good indication of whether we can eliminate DST entirely.
Verify your Linux box is correct. (Score:4, Informative)
notice that the isdst changes from 0 to 1 on March 11. This means I have the correct zoneinfo file in my system.
% ls -l
lrwxrwxrwx 1 root root 30 2006-09-24 21:50
PS - likely the steps to check this on FreeBSD are similar. Post your experiences.
Its not just "unprepared" companies (Score:3, Interesting)
It was a complete disaster. Now my calendar entries for the affected week are mostly off by an hour (not all of them mind you) while a friend who displays dual timezones now has one less timezone in the continental US - the west coast is only two hours behind the east coast. Probably he can fix this by turning it off and back on, but it looks like we will have to rebook all meetings.
Of course, one can certainly argue that correctly implemented software would not have a problem since everything would be done internally in UTC, but clearly not all software is correctly implemented.
As for the stupid change - if they had brought us into line with Europe there would have been some logic to the change. This one was just make work for a cheap political stunt.
Windows and CMOS clock (Score:4, Insightful)
I've heard all sorts of dumb reasons against running UTC on the CMOS, like "who cares about UTC, My time is local" and "why should I keep two different times on my computer".
But, the OS will hide the UTC from you, and besides, when was the last time you used the BIOS time as your clock?
Forcing UTC on the CMOS clock is surprising since WindowsNT has used UTC for all their internal time tracking for some time. But they *calculate* it from local time, which changes twice a year, _even though_ Windows uses NTP time servers. Doh. It's gotta be *the* dumbest backward compatibility "feature". See here: http://www.cl.cam.ac.uk/~mgk25/mswish/ut-rtc.html [cam.ac.uk]
I hate to be the first to point out... (Score:3, Informative)
It's "Daylight Saving Time" NOT Savings...
http://en.wikipedia.org/wiki/Daylight_saving_time
How to test if your linux machine is ready (Score:5, Informative)
> date --date="Mar 10 15:00:00 UTC 2007"
Sat Mar 10 10:00:00 EST 2007
> date --date="Mar 11 15:00:00 UTC 2007"
Sun Mar 11 11:00:00 EDT 2007
This won't set your clock or anything, it just does the timezone conversion from UTC and displays the results according to the local timezone you have selected.
Re:How to test if your linux machine is ready (Score:5, Informative)
> date --date="Mar 10 15:00:00 UTC 2007"
Sat Mar 10 10:00:00 EST 2007
> date --date="Mar 11 15:00:00 UTC 2007"
Sun Mar 11 11:00:00 EDT 2007
This won't set your clock or anything, it just does the timezone conversion from UTC and displays the results according to the local timezone you have selected.
Re: (Score:3, Interesting)
Don't laugh (Score:3, Informative)
As Dr Phil would say "what WERE you thinking"?
Re: (Score:2, Informative)
You're exactly right, except for the parts where you're talking out of your ass. There are automatic updates for XP and 2000, and instructions for updating Nt4 manually. Vista does in fact ship with the updated DST rules.
Re: (Score:2, Informative)
Where's the "automatic update" for Windows 2000?
From the URL you directed us to:
So it sounds like they have a fix, but I need to pay to get it?!
Re: (Score:2, Interesting)
No it won't (Score:2)
Re: (Score:2, Funny)
Re: (Score:2)
But if the government changes what 3PM means, that person's program will still do what the user (following the government's orders) expects.
You store time in milliseconds, and you convert to/from when the data is inputted/outputted to the user.
Good plan, but it doesn't take into account the fact that the number of seconds from the epoch to Wednesday a
Re: (Score:2, Troll)
And there's Nature's simultaneous Four Day Rotation in One Earth Rotation [timecube.com]. And don't you DARE try to match it!
Re:no need o worry (Score:5, Funny)
Everything is fine in Australia? Remember folks, this announcement is coming from the country that gave us The Wiggles.
Not only that, (Score:3, Funny)
Re: (Score:3, Informative)
How to build the Unix Zoneinfo Time Zone Files Manually
Build binary zone files:
1: download the latest copy of ftp://elsie.nci.nih.gov/pub/tzdata*.tar.gz [nih.gov]. This will include the details of the DST change. You could also update the source files by hand i.e.: /usr/share/lib/zoneinfo/src in solaris
2: view file to ensure necessary changes have been made.
3: compile the binary zone file per the instructions of the time zone compiler 'zic' which comes with the system