Slashdot Mirror


Azure Failure Was a Leap Year Glitch

judgecorp writes "Microsoft's Windows Azure cloud service was down much of yesterday, and the cause was a leap year bug as the service failed to handle the 29th day of February. Faults propagated making this a severe outage for many customers, including the UK Government's recently launched G-cloud service."

247 comments

  1. Who could have foreseen a leap year coming? by elrous0 · · Score: 5, Funny

    Seriously, if my American high school education taught me nothing else, it was that those things only come along like every 100 years or something.

    --
    SJW: Someone who has run out of real oppression, and has to fake it.
    1. Re:Who could have foreseen a leap year coming? by tripleevenfall · · Score: 4, Funny

      Save us, Captain Obvious! *swoons* :P

    2. Re:Who could have foreseen a leap year coming? by Kamiza+Ikioi · · Score: 5, Funny

      In all fairness, Microsoft never figured anyone would still be using this service by the time a leap year rolled around.

      --
      I8-D
    3. Re:Who could have foreseen a leap year coming? by davidbrit2 · · Score: 2

      I think I like this theory the best.

    4. Re:Who could have foreseen a leap year coming? by NatasRevol · · Score: 1

      I thought that was Halley's comet?

      --
      There are two types of people in the world: Those who crave closure
    5. Re:Who could have foreseen a leap year coming? by Anonymous Coward · · Score: 5, Funny

      In all fairness, Microsoft never figured anyone would still be using this service by the time a leap year rolled around.

      I work on the Azure team and I can confirm this.

    6. Re:Who could have foreseen a leap year coming? by jc42 · · Score: 5, Insightful

      Actually every hundred year is when a leap year doesn't come along. (unless it's divisible by 400, then it does)

      Right; and I wonder how many computer failures will happen on the first of March, 2100, due to part of the software thinking it's the 29th of February, causing random problems while talking to other software that knows the correct date.

      We all know it's gonna happen ...

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    7. Re:Who could have foreseen a leap year coming? by Gilmoure · · Score: 1

      Yeah, my friends where married on Feb. 29th, 2000. Smart move as my buddy never has to remember their anniversary.

      --
      I drank what? -- Socrates
    8. Re:Who could have foreseen a leap year coming? by uncqual · · Score: 1

      We all know it's gonna happen ...

      But, fortunately(?), most of us won't care because we won't be around.

      --
      Why is there an "insightful" mod and why isn't it "-1"? If I wanted insight, I wouldn't be reading /.
    9. Re:Who could have foreseen a leap year coming? by Shifty0x88 · · Score: 1

      Now will people change their views of: the cloud is for everything, we can put everything in the cloud.... well until it stops working and then we are sooo screwed =(

    10. Re:Who could have foreseen a leap year coming? by Krakhan · · Score: 1

      The issue you're describing already did happen with the older PS3 models, but in 2010: http://news.cnet.com/8301-17938_105-10461881-1.html

    11. Re:Who could have foreseen a leap year coming? by cvtan · · Score: 1

      It's not like they announce leap years ahead of time!

      --
      Sorry, but gray text on gray background is making my eyes bleed.
    12. Re:Who could have foreseen a leap year coming? by turgid · · Score: 1

      Yes, but we have a Service Level Agreement with them and they have to initiate a fix within Four Hours!

    13. Re:Who could have foreseen a leap year coming? by plopez · · Score: 1

      So the answer is obvious, it's the others software's fault. Not Microsoft's.

      --
      putting the 'B' in LGBTQ+
    14. Re:Who could have foreseen a leap year coming? by VortexCortex · · Score: 3, Interesting

      In all fairness, Microsoft never figured anyone would still be using this service by the time a leap year rolled around.

      Ah, that explains why Zunes went dark on New-Years 2009...

      Think about this. You're a software dev, and you use a MS C++ compiler. They wrote their standard libs, including the "time.h" / &ltctime&gt code... you use their time libraries.
      Now two things:
      0. MS employs some real nut-jobs that can't even use the standard time functions and instead write their own for each project...
      or
      1. MS doesn't even trust their own compiler / libraries to do the right thing?

      It scares me to think that MS makes operating systems... IMHO, they should get back to BASICs.

    15. Re:Who could have foreseen a leap year coming? by Alsee · · Score: 5, Funny

      Microsoft has solved the problem and applied a patch to their systems.
      The new patch is anticipated to keep the service up and stable for least 4 years.

      -

      --
      - - You can't take something off the Internet! That's like trying to take pee out of a swimming pool.
    16. Re:Who could have foreseen a leap year coming? by PenquinCoder · · Score: 2

      That's nothing. I was born Feb 29, 24 years ago. Who knew that being six years old would suck so much....

    17. Re:Who could have foreseen a leap year coming? by Anonymous Coward · · Score: 1

      Luckily, there's no way my employer will still be using the quick demo app I threw together in Access by th... Shit.

    18. Re:Who could have foreseen a leap year coming? by Anonymous Coward · · Score: 0

      oops, wrong item in moderation list! posting to undo.

    19. Re:Who could have foreseen a leap year coming? by Anonymous Coward · · Score: 0

      0. MS employs some real nut-jobs that can't even use the standard time functions and instead write their own for each project...

      or

      1. MS doesn't even trust their own compiler / libraries to do the right thing?

      Yes.

    20. Re:Who could have foreseen a leap year coming? by Anonymous Coward · · Score: 0

      Yes, but remember that when Bill and Paul wrote their BASIC interpreter they didn't have to INVENT BASIC--that had already been done by Dartmouth University. They just had to write the interpreter, just like hundreds of other experimenters had done before them (just those other people didn't try to make a buck from their efforts--they freely distributed their versions).

  2. Re:TCO TIC by tripleevenfall · · Score: 5, Funny

    Obviously you didn't inform yourself with the very helpful and informative "Get The Facts" materials Microsoft provided us with a few years ago. If you had you would know how much higher the TCO of Linux on the server is even after a massive outage.

  3. Same Story / Different Day by DownWithTheMan · · Score: 5, Funny

    Didn't this happen last leap year to the Zunes... oh yeah...

    1. Re:Same Story / Different Day by g0bshiTe · · Score: 4, Insightful

      You would think that they would have remembered, or some brilliant mind would have said "hey don't forget leap days", they should have asked the janitor. Those guys know everything.

      --
      I am Bennett Haselton! I am Bennett Haselton!
    2. Re:Same Story / Different Day by firex726 · · Score: 5, Interesting

      What is with MS and their apparent inability to cope with leap years?

    3. Re:Same Story / Different Day by UnknowingFool · · Score: 2

      Yes and it will happen again. As far as I know MS never created a patch. They just told customers to wait out the bug. Looks like it will happen again this year.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
    4. Re:Same Story / Different Day by roc97007 · · Score: 1

      I'm wondering if the bug started in some early version of ms-dos and then propagated to all their other projects ever since through code re-use...

      --
      Oliver's law of assumed responsibility: If you're seen fixing it, you will be blamed for breaking it.
    5. Re:Same Story / Different Day by robthebloke · · Score: 3, Funny

      Like how to brush the problem under the carpet for another 4 years?

    6. Re:Same Story / Different Day by JazzHarper · · Score: 2

      I would like to know the same thing. This seems to be systemic. Is there something inherently confusing or flawed in the way Microsoft approaches elapsed-time calculations? Is it due to the internal representation of time that they use, or is there some reason that developers on their platform are doing calculations using date strings, or is it something else?

    7. Re:Same Story / Different Day by UnknowingFool · · Score: 5, Interesting

      No it came from Freescale in a driver that Toshiba used. Not many know that the original Zune was a Toshiba Gigabeat with a new UI and outer shell.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
    8. Re:Same Story / Different Day by KhabaLox · · Score: 1

      "If you're a Zune Pass subscriber, you may need to sync your device with your PC to refresh the rights to the subscription content you have downloaded to your device.

      That's the scariest sentence in that entire article.

      --
      Ceci n'est pas un sig.
    9. Re:Same Story / Different Day by John+Hasler · · Score: 5, Funny

      Well, we knew it was a Microsoft product so we knew they bought it from someone.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    10. Re:Same Story / Different Day by The+Grim+Reefer · · Score: 1

      What is with MS and their apparent inability to cope with leap years?

      This time they thought the Mayan calendar ended at the beginning of 2012 and not the end.

    11. Re:Same Story / Different Day by SuricouRaven · · Score: 1

      Either coincidence, or else they reused some old code from another department (As good programmers should - no point spending precious time reinventing the wheel) and thus inadvertantly used the old bug too.

    12. Re:Same Story / Different Day by tlhIngan · · Score: 3, Informative

      No it came from Freescale in a driver that Toshiba used. Not many know that the original Zune was a Toshiba Gigabeat with a new UI and outer shell.

      Yeah, it was a really stupid bug, especially when you consider the OS provides a very useful set of APIs for dealing with it (basically convert a SYSTEMTIME (day/month/year/mm/hh/ss) into a FILETIME (64-bit unsigned int similar to time_t), do your math (the compiler will handle the 64-bit computations for you) and convert it back. Two OS calls.

      If you're having ot do leap year calculations or even any sort of date calculations, stop. The OS or library will probably already have a set of functions for doing date calculations without you have to do it manually. Given how easy they are to screw up, far better to leave it to someone else.

      Hell, given Windows worked fine, I don't even want to know what Azure is doing - the fundamental OS and runtimes all handle leap year date calculations with aplomb. Heck, that might be some of the oldest code in the kernel these days because it was written a long time ago, works well and has been thoroughly debugged through the decades.

    13. Re:Same Story / Different Day by Barsteward · · Score: 1

      probably but Y2K should have fixed it

      --
      "The hands that help are better far than lips that pray." - Robert Ingersoll (1833-1899)
    14. Re:Same Story / Different Day by UnknowingFool · · Score: 4, Interesting

      According to the details I know it had to do with certificate validation. So part of Azure is using some code that doesn't use standard Windows APIs. Not shocking is that MS does not conform to standards. Shocking is that they don't conform to their own standards.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
    15. Re:Same Story / Different Day by FunkyELF · · Score: 2

      Picture this: You're gearing up to create a killer playlist on your 30GB Zune for your annual New Year's bash.

      Great... now I'm going to have nightmares

    16. Re:Same Story / Different Day by spire3661 · · Score: 2

      The only word to describe this is incompetence.

      --
      Good-bye
    17. Re:Same Story / Different Day by Anonymous Coward · · Score: 0

      To be fair, thier cloud service uses the code from the Zune. Little known fact: the original name was Azune, but there was a typo and the 'n' was replaced with an 'r'.

    18. Re:Same Story / Different Day by Dhalka226 · · Score: 5, Insightful

      I had a similar thought about code reuse, but an entirely different conclusion: I thought that they weren't re-using good code since the same problem has cropped up at least two times. That sounds more like a case of re-rolling things that definitely shouldn't be re-rolled (date/time handling) to me.

      In either event, they're not using particularly good practices. Either they are constantly reinventing the wheel and apparently in error-prone ways, or they are re-using code but paying no attention to keeping that external code up to date.

      The only other thing I can think of is that Azure is somehow so drastically different than anything else they have ever done that they had to do the code again from scratch -- which is probably a problem all by itself.

    19. Re:Same Story / Different Day by h4rr4r · · Score: 1

      They hire a bunch of H1Bs and temp workers. They were the subject of some state reviews over the constant use of temps, why would a temp care about something 4 years into the future?

    20. Re:Same Story / Different Day by Anonymous Coward · · Score: 0

      No it came from Freescale in a driver that Toshiba used. Not many know that the original Zune was a Toshiba Gigabeat with a new UI and outer shell.

      It wasn't a driver, it was reference code that should never have been used in a final product.

    21. Re:Same Story / Different Day by Maow · · Score: 2

      I would like to know the same thing. This seems to be systemic. Is there something inherently confusing or flawed in the way Microsoft approaches elapsed-time calculations? Is it due to the internal representation of time that they use, or is there some reason that developers on their platform are doing calculations using date strings, or is it something else?

      I wonder if it is related to the fact that MS systems apparently store the system time in local time instead of UTC?

      At least, that's my understanding of how they store it, could be wrong.

    22. Re:Same Story / Different Day by jellomizer · · Score: 1

      Never code your data in a list of max days for each month... You'll just get burned every time.
      To find find the Max Day for each month you subtract 1 day from from the first of the next month for your given year. And let the OS clock deal and more embedded Date objects deal with it.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    23. Re:Same Story / Different Day by jc42 · · Score: 5, Interesting

      What is with MS and their apparent inability to cope with leap years?

      I would like to know the same thing. This seems to be systemic.

      Yeah; it's systemic. Or at least it used to be a few years back, and I wouldn't be surprised if they haven't fixed the basic problem yet. The problem is fairly simple: Windows' internal clock is in local time.

      To a programmer with experience writing date/time code, I've found that this is all you need to tell them. Any software whose internal clock is in local time will be buggy, and it will never be completely fixed. Attempts to fix bugs will merely introduce bugs elsewhere in the chains of date/time handling. The sensible solution is to adopt a "universal time" internally, and convert at the last stage when you present the date/time to a human user. Yes, you theoretically can work with local time internally, but (teams of) humans can't actually make this work in practice. The best they can do is make it work in the "normal" cases. Bug fixes then tend to just move the time bugs around to different places in the code. But it can be very difficult to get management to accept this and agree to UT-only internally.

      Java also used to specify local time internally (and may still do so, but I haven't used it in years). I worked on a number of projects where, after repeated date/time disasters at every switch to/from DST and every Feb 29, java was abandoned and everything was rewritten in a language (usually C++) whose libraries supported a UT timestamp and didn't have all those time bugs.

      Does anyone know if MS Windows has introduced a UT internal time yet? If not, then we can reliably predict that such bugs will continue to plague their users.

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    24. Re:Same Story / Different Day by ekimminau · · Score: 3, Funny

      According to Microsoft all time started on Jan 1, 0001.

      http://msdn.microsoft.com/en-us/library/system.datetime.ticks.aspx

      No fricking wonder the "system idle process" uses 19% of a cpu. The OS is counting to a billion every second.

      Ooops. But they still lots of things in 32bit land, too.
      http://msdn.microsoft.com/en-us/library/system.datetime.aspx

      --
      Armaments, 2-9-21 And Saint Attila raised the hand grenade up on high, saying, 'O Lord, bless this Thy hand grenade' N
    25. Re:Same Story / Different Day by DamonHD · · Score: 2

      To the best of my knowledge, Java's System.currentTimeMillis() has always been UTC milliseconds since the UNIX epoch.

      Don't stop someone messing up and having the computer set up badly, eg correct apparent local time but wrong timezone, causing "UTC" time to wrong.

      Rgds

      Damon

      --
      http://m.earth.org.uk/
    26. Re:Same Story / Different Day by swilly · · Score: 1

      I have a coworker whose theory is that Azure was made by creating a cluster of old Zunes.

      Think about it. Microsoft has a butt-load of unsold Zunes, Zunes had a leap year bug, Microsoft keeps Azures hardware configuration a secret, and now Azure has a leap year bug. Sure, it's a different bug, but as a programmer I have had bug fixes that introduced other bugs, so it's entirely plausible.

    27. Re:Same Story / Different Day by Anonymous Coward · · Score: 0

      why does anyone even care about the mayan's? they weren't even able to predict their own demise which is arguably more important than the end of the world...because who cares when the world ends if you won't make it to the end anyway.

      so why does anyone think that their calendar ending has any meaning whatsoever?

    28. Re:Same Story / Different Day by Xtifr · · Score: 2

      Their calendar ending is extremely significant! To anyone running a Mayan computer. Those things are all going to crash hard this year! It's going to be like Y2K all over! :)

    29. Re:Same Story / Different Day by plopez · · Score: 1

      No. Sloppy "just good enough" coding.

      --
      putting the 'B' in LGBTQ+
    30. Re:Same Story / Different Day by spongman · · Score: 1

      i think they actually consider time to actually start in 1600 (or 1601, i don't remember which). all dates before that are considered outside the gregorian calendar (which started shortly before 1600) and are extrapolated.

    31. Re:Same Story / Different Day by GigaplexNZ · · Score: 1

      They do support using UTC for the hardware clock, but it's not the default. There's also been a long history of bugs with their implementation of it, I think it was really only reliably usable on Windows 7 era systems (patch backported to Vista SP2).

    32. Re:Same Story / Different Day by GigaplexNZ · · Score: 1

      Yes, you theoretically can work with local time internally

      I disagree. Daylight savings turnover has two possible UTC values for a given localtime during one of the transitions. During the other transition, there's an invalid localtime which doesn't map to UTC. The idea of attempting it is inherently flawed.

      Does anyone know if MS Windows has introduced a UT internal time yet? If not, then we can reliably predict that such bugs will continue to plague their users.

      Refer to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal
      Disclaimer, it's not without its own set of issues.

    33. Re:Same Story / Different Day by functor0 · · Score: 1

      Does anyone know if MS Windows has introduced a UT internal time yet? If not, then we can reliably predict that such bugs will continue to plague their users.

      According to an old MS guy [1], Windows NT stores UTC time internally but maintains the BIOS in local time. 1. http://blogs.msdn.com/b/oldnewthing/archive/2004/09/02/224672.aspx

    34. Re:Same Story / Different Day by EETech1 · · Score: 1

      I can see were there could be a problem with daylight saving time, and the clock essentially jumped backwards, but could you give examples of problems you've in experienced with the leap day that would be solved by having the internal clock set to a different time? it would seem in order to keep an accurate date the internal clock would also have to have the date set to the 29th of February, so what is gained by not adding the of the time zone in that case?

      What day would your universally timed internal clock think it was on february 29th?

      Cheers!

    35. Re:Same Story / Different Day by EETech1 · · Score: 1

      I still have one, its awesome, only player I could find at the time that you could actually delete songs right on the player. It really is a needed feature IMHO.

    36. Re:Same Story / Different Day by AmiMoJo · · Score: 1

      It isn't just MS, Sony had time related issues with the PS3 and Apple had multiple issues with alarms not working. Apparently handling time is quite error prone, but even so you would think that a large company could just pay someone to check every single day for the next X years by winding the clock forwards before release.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    37. Re:Same Story / Different Day by Anonymous Coward · · Score: 0

      Having lived abroad, i can tell you that it is not just the date/time systems that MS keeps in local time (local as in Redmond Washington). Everything is setup as if you were sitting on the campus in Redmond. While I understand the ease of giving the user a default setting to begin with, the ease is really mostly for the developer, not the user. Users know where they are, it is the developers who seem confused.

      Don't think, please, that I am being foolish. Since most Wincomps are setup in factories, how hard would it be to code the install to destination time? And other presets? Requiring defaults like American English, Westcoast time and locale and all the rest of the default setup decisions made "for your ease of installation" are not helpful or thoughtful. How hard would it be to use a world map approach to setup? Obviously not at all, since it is the Linux approach (and others as well, fill in your otherness here, please)

  4. 28 days by ichthus · · Score: 5, Funny

    Well, this is all because 28 days in February ought to be enough for everyone.

    --
    sig: sauer
    1. Re:28 days by Moheeheeko · · Score: 1
      The people who pay employees by salary instead of hourly certainly think so.

      http://www.usnews.com/news/articles/2012/02/29/february-29-all-work-and-no-pay

    2. Re:28 days by tuffy · · Score: 1

      In 2012 there are 261 weekdays. In 2011, there were 260. But in 2010 and 2009 there were also 261 weekdays. So not really.

      --

      Ita erat quando hic adveni.

    3. Re:28 days by geekoid · · Score: 1

      yeah... because salary workers never work on weekends.

      Funny, as an hourly person, I never work weekends..or more then 40 a week.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    4. Re:28 days by davidbrit2 · · Score: 5, Funny

      I always remember to put DEVICEHIGH=FEB.SYS into my config.sys every four years.

    5. Re:28 days by Chris+Mattern · · Score: 1

      Article makes an assumption that is usually not true--that salaried workers get paid on a month-related schedule, which always causes all sorts of problems, not just leap-year related. I'm salaried and get paid every two weeks; leap year means squat as far as getting paid is concerned.

    6. Re:28 days by John+Hasler · · Score: 1

      When I was on salary (back in ancient times) the deal was that I got $10,000/year (I said ancient times) paid out in 12 equal installments. Yes, the pay periods varied in length. So what?

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    7. Re:28 days by Anonymous Coward · · Score: 1

      I'm old enough to admit DOS jokes still crack me up. Good one!

    8. Re:28 days by Anonymous Coward · · Score: 0

      You work 40 weekends a week? Impressive!

    9. Re:28 days by SuperDre · · Score: 1

      Uhm.. here in the netherlands and a lot of other countries, being payed by the month is usual.. But even then it doesn't matter as (non buggy) salary calculation application keep this in mind because taxes and (a lot of) pensions already have it in their calculationrules..

    10. Re:28 days by 6ULDV8 · · Score: 1

      As a salaried worker, I worked 18 hours last weekend plus my normal 50 - 60 hours with some stints through the week starting at 2AM or so. It's common. The reverse is that if I don't find something to do at other times, I can go fishing or watch a movie and still get paid and I don't have to be anywhere at any particular time unless there's a crisis.

      --
      Pull my finger for my public key.
    11. Re:28 days by Anonymous Coward · · Score: 0

      HaHaHa!

    12. Re:28 days by Xtifr · · Score: 1

      That's nonsense. A normal month has 30 or 31 days. If you're paid monthly (or bi-monthly), you're basically getting paid for 2-3 days you didn't work in February. On a leap year, that merely reduces the number of days you're overpaid for by 1-2.

    13. Re:28 days by SolitaryMan · · Score: 1

      I guess journalists just needed something to write about on this extra day.

      --
      May Peace Prevail On Earth
    14. Re:28 days by EETech1 · · Score: 1

      I like the Salaried Non-Exempt gig the best. 40 no matter what, and more if they need you more. It's worth asking for! It results in less overtime than a salaried position (how it compares with hourly I have no guess) with the benefit of a higher pay when you actually have more work than your management agrees you can complete in a normal 40 hour work week.

      Cheers

    15. Re:28 days by petman · · Score: 1

      In the company I work for, we get paid the same every month, but if ever there's a need to calculate our daily salary, then the monthly salary would get divided by the number of days in the month. For example, let's say my salary is $3000/month. If, say, I were to take a day of unpaid leave in January, my salary for that month would be deducted by $3000/31, but if I were to take unpaid leave in February this year, it would be deducted by $3000/29.

      In effect, this means I get paid more per day in February compared to in other months.

  5. What a shame by gzipped_tar · · Score: 1

    We still see this kind of XXXX coming up every leap year.

    --
    Colorless green Cthulhu waits dreaming furiously.
    1. Re:What a shame by TheCRAIGGERS · · Score: 4, Funny

      We still see this kind of XXXX coming up every leap year.

      We're all adults (or close enough to it, anyway) here. I think we're all capable of seeing the word "shit" without our faces melting like that nazi who peeped in the ark.

      My apologies to everyone who is now having their face melt off after reading that previous sentence.

    2. Re:What a shame by Relayman · · Score: 1

      Actually, we're seeing this XXXX every year now and twice in leap years. Remember when the cash registers thought 2010 was 2016 because some idiot was considering the year part (10) to be in hexadecimal?

      Ironically, I asked my wife on 2/28 what was going to break on 2/29 because it didn't realize that 2012 was a leap year. I didn't know it was going to be this big.

      --
      If I used a sig over again, would anyone notice?
    3. Re:What a shame by Anonymous Coward · · Score: 0

      Faces, Lisa? Or feces?

    4. Re:What a shame by Anonymous Coward · · Score: 0

      I thought the word behind "XXXX" was "crap" ...

  6. What is it with Microsoft and Leap Year? by madsci1016 · · Score: 3, Informative

    Anyone remember trying to turn on their Zune 3.5 years ago? That didn't work so well either.

    1. Re:What is it with Microsoft and Leap Year? by Kozz · · Score: 4, Informative

      Now, I'm not necessarily a Microsoft apologist, but I have to point out that it wasn't so long ago that other things near and dear to us geeks were experiencing similar problems.

      I was trying to run some ant scripts yesterday that interact with an FTP server to delete some files. Those damned files wouldn't get deleted. They weren't even returned from a listing command. As it turns out, I was using a particularly old version of Apache Commons-Net library (this jar file was from 2005) which had a leap-year bug. It simply would not show me files with modification dates of 2/29. I was looking at the FTP server configuration, logging in with other clients, moving and renaming files, and all about ready to break out Wireshark... and then it occurred to me that it was leap day. Hoo-fucking-ray. "touch"ed the file, and sure enough, it was suddenly available. Those are a few hours of my life I'll never get back.

      --
      I only post comments when someone on the internet is wrong.
    2. Re:What is it with Microsoft and Leap Year? by Anonymous Coward · · Score: 0

      You can be forgiven for not having tested your script. Azure is another kind of beast.

    3. Re:What is it with Microsoft and Leap Year? by egamma · · Score: 2, Funny

      Now, I'm not necessarily a Microsoft apologist, but I have to point out that it wasn't so long ago that other things near and dear to us geeks were experiencing similar problems.

      I was trying to run some ant scripts yesterday that interact with an FTP server to delete some files. Those damned files wouldn't get deleted. They weren't even returned from a listing command. As it turns out, I was using a particularly old version of Apache Commons-Net library (this jar file was from 2005) which had a leap-year bug. It simply would not show me files with modification dates of 2/29. I was looking at the FTP server configuration, logging in with other clients, moving and renaming files, and all about ready to break out Wireshark... and then it occurred to me that it was leap day. Hoo-fucking-ray. "touch"ed the file, and sure enough, it was suddenly available. Those are a few hours of my life I'll never get back.

      Your post is not anti-Microsoft, so you must be a shill.

    4. Re:What is it with Microsoft and Leap Year? by John+Hasler · · Score: 1

      > Your post is not anti-Microsoft, so you must be a shill.

      It's anti-Java and therefor anti-Oracle. That makes it ok.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    5. Re:What is it with Microsoft and Leap Year? by seandiggity · · Score: 2

      As it turns out, I was using a particularly old version of Apache Commons-Net library (this jar file was from 2005) which had a leap-year bug. It simply would not show me files with modification dates of 2/29.

      If this is the bug you're talking about, it appears a bug report was filed, discussed, and a temporary workaround was offered (perhaps more than one). Although free software has bugs just like proprietary software, the way they are reported and handled is night and day.

      --
      Geeks like to think that they can ignore politics, you can leave politics alone, but politics won't leave you alone.-rms
    6. Re:What is it with Microsoft and Leap Year? by Kozz · · Score: 2

      If this is the bug you're talking about, it appears a bug report was filed, discussed, and a temporary workaround was offered (perhaps more than one). Although free software has bugs just like proprietary software, the way they are reported and handled is night and day.

      That appears to be the very same bug, yes. And I'm not disputing the handling of the bug, but merely pointing out that even with "many eyes", this bug existed not so very long ago. Open Source is not immune to the same kinds of problems, though I grant you I probably should have been checking for the latest compatible libraries.

      --
      I only post comments when someone on the internet is wrong.
    7. Re:What is it with Microsoft and Leap Year? by seandiggity · · Score: 2

      Open Source is not immune to the same kinds of problems, though I grant you I probably should have been checking for the latest compatible libraries.

      Whenever I run into a bug like this where something just seems to go *poof*, that's the first thing I check. Learned my lesson a few years ago with an old version of a library and a cranky sysadmin who would just not believe it was the source of the problem. I wrote not one, but *three* workarounds, none of which he was willing to use, then he just updated the library with the latest version and everything worked.

      --
      Geeks like to think that they can ignore politics, you can leave politics alone, but politics won't leave you alone.-rms
    8. Re:What is it with Microsoft and Leap Year? by Nikker · · Score: 1

      So your saying a self rolled script working off a binary from almost 10 years ago should apply to a multi-billion dollar a year company's server farm offering connections to the worlds biggest corporations and governments?

      Do I have a job for you!

      --
      A loop, by its nature, continues. If that didn't make sense, start reading this sentence again.
    9. Re:What is it with Microsoft and Leap Year? by Tyr07 · · Score: 1

      Yea...but

      "Use our super mega cloud service, we are hosting teh internetz"
      "Oh teh noes, an extra day *melts*"

      I'd understand it if it was software that ran on a single pc, can be worked around or other things, takes updates etc, but when you're trying to be the internet, I expect better. It's a multimillion or billion dollar service. Get your shit together.

    10. Re:What is it with Microsoft and Leap Year? by Anonymous Coward · · Score: 0

      No matter what software you're using there is no substitute for testing.

      I've been involved in the software testing business for a long number of years and my own observation is typically software companies don't test as thoroughly as the companies that deploy the packages they produce. Microsoft is not an exception.

      The problem with the rehashed “Cloud” idea is you eliminate your ability to test that portion of the code logic that resides with the software vendor.

      This would have been an easy bug to catch if they were using some forward-date testing tools.
      Yo Microsoft, here's a hint - www.solution-soft.com/timemachine.shtml

    11. Re:What is it with Microsoft and Leap Year? by Anonymous Coward · · Score: 0

      Who in their right mind uses FTP. That's the worse possible protocol. Don't do that! Bad programmer, no cookie!

    12. Re:What is it with Microsoft and Leap Year? by Anonymous Coward · · Score: 0

      Indeed! And some of you may discover that your organization has systems which are not yet upgraded to a recent version of Apache Commons-Net library. Can anyone tell how I have spent my day?

    13. Re:What is it with Microsoft and Leap Year? by petman · · Score: 1

      Those are a few hours of my life I'll never get back.

      As opposed to the other hours of your life you would be able to get back?

  7. To the cloud by g0bshiTe · · Score: 1

    This is probably part of the reason why the cloud really hasn't taken off in the corporate sector, and it's no wonder why.

    --
    I am Bennett Haselton! I am Bennett Haselton!
  8. In a new press conference.. by Anonymous Coward · · Score: 5, Funny

    Microsoft has told the press that they don't expect the Azure cloud service to fail again for years. In an unrelated schedule change, a down-for-maintenance slot was scheduled 4 years in advance.

    1. Re:In a new press conference.. by NatasRevol · · Score: 1

      It took the Zune slot.

      --
      There are two types of people in the world: Those who crave closure
  9. office in the cloud by Anonymous Coward · · Score: 5, Funny

    It's sold as Office 365 not Office 366

    1. Re:office in the cloud by GiantRobotMonster · · Score: 2

      This behaviour is by design.

  10. Prepared for future by gmuslera · · Score: 3, Informative

    If they can't handle an exception that is around since 2k years ago, what about newer exception? Would be interesting to see what could happen next June 30.

    1. Re:Prepared for future by SuricouRaven · · Score: 4, Informative

      The leap year specification was only written in 1582. So it isn't 2k years old.

    2. Re:Prepared for future by gmuslera · · Score: 2

      In the Julian calendar you had 29 days in february each 4 years, basically counts as leap year.

    3. Re:Prepared for future by fritsd · · Score: 1

      That Gregorian calendar issue was for the Microsoft Excel OOXML bug canonized as a feature...

      --
      To be, or not to be: isn't that quite logical, Slashdot Beta?
    4. Re:Prepared for future by operagost · · Score: 1

      And then you get hosed every 100... except when it's every 400.

      --

      Gamingmuseum.com: Give your 3D accelerator a rest.
    5. Re:Prepared for future by Anonymous Coward · · Score: 2, Informative

      And then you get hosed every 100... except when it's every 400.

      No, that's a feature that the Gregorian calendar added later.

      The simple Julian calendar assumed that years were exactly 365.25 days long and had a leap day every four years starting from 46 BC.

      gmuslera was right --- leap days have been around for over 2000 years.

    6. Re:Prepared for future by dbIII · · Score: 1
      For a relatively contemporary source "The Lives Of The Twelve Caesars, Complete by C. Suetonius Tranquillus"
      http://www.gutenberg.org/files/6400/6400-h/6400-h.htm

      Turning afterwards his attention to the regulation of the commonwealth, he corrected the calendar 68, which had for (28) some time become extremely confused, through the unwarrantable liberty which the pontiffs had taken in the article of intercalation. To such a height had this abuse proceeded, that neither the festivals designed for the harvest fell in summer, nor those for the vintage in autumn. He accommodated the year to the course of the sun, ordaining that in future it should consist of three hundred and sixty-five days without any intercalary month; and that every fourth year an intercalary day should be inserted.

  11. LOL Snurk Snurk by Grindalf · · Score: 0

    Oh Man! That's so embarrassing! :0)

    --
    The purpose of existence is to make money.
  12. UNIX Epoch FTW by _0x783czar · · Score: 2

    Correct me if I'm wrong, nut they could have avoided this by relying on the UNIX epoch. Same with Y2K. But beware Y2K38 you 32-bit users!

    --
    ~theCzar
    1. Re:UNIX Epoch FTW by gman003 · · Score: 1

      Not necessarily. It probably wouldn't have been a complete failure, but even software using epoch time internally can have problems.

      Remember, you still have to put it into Regular Time to display to users. And take input in from users - if someone schedules a task for 2011-02-29, it should fail, but if it's scheduled for 2012-02-29 it should be allowed. And maybe there's business logic to figure out whether it's a weekend and such, which could easily be thrown off during the UNIX->Gregorian conversion...

    2. Re:UNIX Epoch FTW by GiantRobotMonster · · Score: 1

      yeah that's going to be a fun year.

    3. Re:UNIX Epoch FTW by Anonymous Coward · · Score: 0

      But there's loads of great Open Source software to do those calculations ... oh, wait ...

    4. Re:UNIX Epoch FTW by Anonymous Coward · · Score: 0

      Correct me if I'm wrong, nut they could have avoided this by relying on the UNIX [....]

      Okay, see, there's your problem. At that last word, Ballmer stopped reading and just started frothing and repeatedly muttering, with increasing profanity and racial epithets each repetition, about how Microsoft is a big, grown-up company that shouldn't have to rely on anyone else's standards, ever, so all hope of solving this problem with a LOGICAL solution is in vain.

      In fact, he's probably back at Redmond right now, trying to push the concept of a Microsoft(tm) LeapLess(c) DirectCalendar(r) to the shareholders.

    5. Re:UNIX Epoch FTW by Anonymous Coward · · Score: 0

      If you did it properly - I.e. using a tried-and-true library to handle all the date conversions, that wouldn't happen.

      Also, as far as scheduling for 2011-02-29, I'd assume that it'd do what PHP does - shift it to March 1st.
      That way the actual /day/ it'd be supposed to happen on would be correct(i.e. Next Tuesday or w/e), if the /date/ wasn't.

    6. Re:UNIX Epoch FTW by Anonymous Coward · · Score: 0

      If by "push the concept of a Microsoft(tm) LeapLess(c) DirectCalendar(r) to the shareholders" you mean "throw some chairs around", you're right.

    7. Re:UNIX Epoch FTW by _0x783czar · · Score: 1

      Good point. Although, I'm no expert on either method, I keep wondering what on earth does Microsoft USE to track dates? I mean seriously, a Leap-Year bug? Handling leap-years was like one of my first programming assignments in college, I don't get how that gets forgotten. Granted, it is easy to judge them here, sitting at my laptop, but I just can't understand how something like that gets botched so bad.

      --
      ~theCzar
    8. Re:UNIX Epoch FTW by gman003 · · Score: 1

      People deciding to reinvent the wheel instead of using one of the standard libraries to handle shit. There's countless instances of it. Because some programmers are morons, and they seem to accumulate at the large corporations.

      Also, I checked, and apparently Windows stores time, internally, as 100-nanosecond intervals since 1 January 1601 00:00:00. It already uses 64-bit values for that, so it will have a Y60K Problem (if my math was correct, at least).

  13. Dumb people never learn by Anonymous Coward · · Score: 1

    Never trust Microsoft for anything.

    1. Re:Dumb people never learn by Anonymous Coward · · Score: 1, Insightful

      Never trust Microsoft for anything.

      Never trust any vendor for anything.

      FTFY, blah blah blah....

      You whipper snappers don't remeber what it was like doing business with IBM back when they ruled the World and some of the things I see about Oracle here on Slashdot makes me cringe.

    2. Re:Dumb people never learn by Tanktalus · · Score: 4, Funny

      Hey! My MS4000 keyboard and MS mouse are working jut fine.

    3. Re:Dumb people never learn by MadKeithV · · Score: 4, Funny

      Hey! My MS4000 keyboard and MS mouse are working jut fine.

      I see what you did there.

  14. Uh Oh by Anonymous Coward · · Score: 0

    If we could peek into one of the container-trailers at the M$ server-farm in Oregon would we find stacks of 386-AT&T-clones running DOS 4.4 and Lotus 1-2-3 doing the calculations?

    1. Re:Uh Oh by philip.paradis · · Score: 1

      Probably not. The folks who are still around from that era would probably be smart enough to have avoided this problem in the first place.

      --
      Write failed: Broken pipe
  15. Everything MS does as "me too" sucks. by scorp1us · · Score: 4, Insightful

    It seems that all of MS's copied products - hotmail, Azure, Zune are all done with a "me too" attitude of just having something so that they don't get left behind. They don't really try to make these "me too" products as industry leaders. But here's the catch. I know plenty of IT people who will always choose MS's offering because, as I was told "you don't get in trouble for choosing MS". And that knowledge seems to be built into MS's offerings.

    --
    Slashdot's rate-of-post filter: Preventing you from posting too many great ideas at once.
    1. Re:Everything MS does as "me too" sucks. by geekoid · · Score: 2

      You 'don't get fired for buying IBM.'
      Then 'You don't get fired for buying MS'
      Next will be Google, probably.

      Never Apple because they are a high end system in a niche market. Yea, people willing to pay 1200+ for a computer is a high end niche market.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    2. Re:Everything MS does as "me too" sucks. by Anonymous Coward · · Score: 0

      Well releasing shoddy "me too" products used to work well for them when they had a powerful monopoly and could bully everyone into using their crap. Now the market has changed and just coming out with a "workalike" product is not going to cut it.

    3. Re:Everything MS does as "me too" sucks. by tgd · · Score: 1

      Um, Azure was one of the first, if not the first, "service in the cloud" as opposed to "server in the cloud" platforms.

      Hotmail substantially predated most of the remaining free e-mail providers. (And is still the largest used.)

    4. Re:Everything MS does as "me too" sucks. by MightyYar · · Score: 2

      Never Apple because they are a high end system in a niche market.

      Yeah, I'm pretty sure joining that race to the bottom is the way to go.

      --
      W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
    5. Re:Everything MS does as "me too" sucks. by SplashMyBandit · · Score: 2

      Um, no. Hotmail was acquired by Microsoft in 1997. Hotmail originally ran on FreeBSD and Solaris. Eventually Microsoft ported it to Windows but they have reliability problems for a long time. I'm surprised you got this so badly wrong given your impressively low Slashdot ID. When corrected, the example you gave exactly counters the argument you were trying to make. I guess that the true origins of Hotmail are not something that Microsoft hides, but probably not something they mention much either. In fact, if you dig around you often find that what people consider to be Microsoft original products are actually acquired and then heavily modified. Examples: DOS, Flight Simulator (from Sublogic), Powerpoint (originally "Forthought Presenter"), Viso, Hotmail, etc etc. Then we get Microsoft developed products that are attempted clones of others: Zune, C#.NET (derived from Java), XBox, Kinect (concepts from iToy, Track IR although a different implementation - but not an original idea). etc etc.

      Azure is the first to use the "cloud" term because Microsoft originated that marketing term. It was Sun that invented the idea long ago (remember, "The network is the computer"), but they were stymied by Microsoft's tactical moves against them (plus some of Sun's own failings - like it being hard to purchase from them due to the crazy internal greed/politics between different Sun sales teams).

      nb. Excel is a true Microsoft product, but ran on Macs two years before being ported to Windows! It is, of course, dervied from Lotus 123. So sure, Microsoft is an innovator, in some parallel universe, but not this one.

      You see that the 'problem' with Slashdotter is not that we intrinsically hare Microsoft - it's just that we have long memories so can easily spot the misinformed and Microsoft's presentation of historical events (which is often PR-ed and doesn't actually line up with what actually happened). I pity the good guys that work for Microsoft, coping so much flak because of the crazy antics of their company/PR/legal/management (although some Microsoft devs and testers obviously are clueless - not having a clue about the Gregorian calendar is a shocking and basic error to make, especially in internationalized software).

    6. Re:Everything MS does as "me too" sucks. by SplashMyBandit · · Score: 1

      The problem with this Slashdotter is that I can't type, and I'm often too hurried to proofread. My apologies for the typos in my previous post.

    7. Re:Everything MS does as "me too" sucks. by scorp1us · · Score: 1

      Azure was released in 2010, Amazon EC was released in 2006.

      Hotmail was originally not Microsoft. It was run on Unix boxes, and I remember reading an article at the time that MS took it over that stated for every unix box replaced, MS has to provide 5 windows 2000 boxes. Since that time it has floundered. Essentially unchanged, it is the only email provider to still use a paged static interface, where Yahoo and Gmail are now using ajax Gmail is till paged but it shows 100 messages at a time (they prefer you to search) but hotmail is still 25, IIRC. The mobile interface to hotmail is laughable at best.

      --
      Slashdot's rate-of-post filter: Preventing you from posting too many great ideas at once.
    8. Re:Everything MS does as "me too" sucks. by Anonymous Coward · · Score: 0

      So how's your stock doing? Enjoying the flat chart for the last decade? Yeah, you can talk about MS "innovation" but the market doesn't lie, fucker.

    9. Re:Everything MS does as "me too" sucks. by Anonymous Coward · · Score: 0

      And when MS bought Hotmail they had a bugger of a time converting it from the BSD platform it was based on.

    10. Re:Everything MS does as "me too" sucks. by Anonymous Coward · · Score: 0

      The market doesn't 'lie', but it's not magic and it does get out-of-touch with reality. MS has had good profit growth over the decade, was clearly overvalued at the start of the decade and may be undervalued now. Don't judge a company by its share price.

      Disclaimer: this AC does not hold, will not hold, and is just offering a different POV

    11. Re:Everything MS does as "me too" sucks. by mjwx · · Score: 1

      Never Apple because they are a high end system in a niche market. Yea, people willing to pay 1200+ for a computer is a high end niche market.

      Yep, spending $1500 on a $750 laptop to run the same SOE x 1200 will most assuredly get you fired.

      --
      Calling someone a "hater" only means you can not rationally rebut their argument.
    12. Re:Everything MS does as "me too" sucks. by tgd · · Score: 1

      Azure was released in 2010, Amazon EC was released in 2006.

      Hotmail was originally not Microsoft. It was run on Unix boxes, and I remember reading an article at the time that MS took it over that stated for every unix box replaced, MS has to provide 5 windows 2000 boxes. Since that time it has floundered. Essentially unchanged, it is the only email provider to still use a paged static interface, where Yahoo and Gmail are now using ajax Gmail is till paged but it shows 100 messages at a time (they prefer you to search) but hotmail is still 25, IIRC. The mobile interface to hotmail is laughable at best.

      Um, what? Have you even logged into it in the last two or three years?

      (That's actually not a serious question, because you've already shown you haven't.)

    13. Re:Everything MS does as "me too" sucks. by tgd · · Score: 1

      Azure was released in 2010, Amazon EC was released in 2006.

      Should also add -- clearly you haven't used them. I've got systems hosted in both. Amazon EC is a server-in-the-cloud model, Azure is a service-in-the-cloud model. They're completely different products, for completely different use cases. (In fact, until recently, I had Azure services that were calling into an EC2 back-end, using S3 for storage, because EC2 and Azure provided very different types of capabilities.)

  16. If MS starts making excuses by blind+biker · · Score: 1

    If MS starts making excuses for this mini fiasco, they will only manage to make Amazon, Google and Apple look like fucking geniuses

    --
    "The agriculture ministry is not in charge of Gundam" - Japanese ministry official.
  17. Only Happens Every 4 Years by trongey · · Score: 5, Funny

    It's not Micorsoft's fault; they're a publicly traded company so they can't think about multi-year events. They're prohibited from considering anything that is beyond the next fiscal quarter.

    --
    You never really know how close to the edge you can go until you fall off.
    1. Re:Only Happens Every 4 Years by NatasRevol · · Score: 1

      They pay no dividend for that extra day. That they don't know about. And didn't learn about last leap year.

      --
      There are two types of people in the world: Those who crave closure
  18. Inexcusable by geekoid · · Score: 1

    Simply inexcusable.

    --
    The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    1. Re:Inexcusable by JamesP · · Score: 2

      True

      Apparently MS only hires people with no concept of future.

      See Zune event, see this. Absolute disregard of date concepts (and testing)

      Now, Linux development worries about this THOROUGHLY (I mean, kernel and main libs, of course a sw developer can get this wrong on Linux as well)

      No counter wrap-around fsck-ups, date exceptions, etc (people are watching this)

      Remember the Windows bug where it would crash after 15 days or so?

      --
      how long until /. fixes commenting on Chrome?
    2. Re:Inexcusable by Pope · · Score: 1
      --
      It doesn't mean much now, it's built for the future.
    3. Re:Inexcusable by BeerCat · · Score: 2

      It was 49.7 days: http://news.cnet.com/Windows-may-crash-after-49.7-days/2100-1040_3-222391.html

      And still inexcusable.

      I remember that one - it wasn't a crash in the usual sense, where something stops working completely. It was far more insidious than that. Everything still looked as if it was working; the cursor moved when you moved the mouse, icons would highlight if single-clicked, but double-click would refuse to play...

      IIRC, the 49.7 days is 2^16 seconds

      --
      "She's furniture with a pulse"
    4. Re:Inexcusable by Anonymous Coward · · Score: 0

      IIRC, the 49.7 days is 2^16 seconds

      Uhh, take half a second and think about what you just said. 2^16 is 65536. Seconds in a day is 86400. Doh!

      It turns out that 49.7 days is 2^32 milliseconds.

    5. Re:Inexcusable by stderr_dk · · Score: 1

      IIRC, the 49.7 days is 2^16 seconds

      Nope, far from it... 49.7 days is 2^32 milliseconds.

      --
      alias sudo="echo make it yourself #" ; # https://pipedot.org/~stderr & http://soylentnews.org/~stderr
    6. Re:Inexcusable by Anonymous Coward · · Score: 0

      Why lie about Linux? There have been many counter bugs that locked-up Linux. I lost dozens of customers because of that bug. Why claim they don't exist? Just do a search for "Linux crash 490 days," and you'll see thousands of people hit hard by this bug. Microsoft screwed-up, but Linux screwed-up worse. With Microsoft a few unimportant consumer devices quit. With Linux, incompetence and lack of desire to fix problems affects the entire Internet.

      And the Windows bug was 49.7 days. Again, why lie?

    7. Re:Inexcusable by BeerCat · · Score: 1

      Ah, thanks for that. I knew that powers of 2 featured somewhere along the line

      --
      "She's furniture with a pulse"
  19. Single Point of Failure by Bicx · · Score: 5, Insightful

    This points out a serious flaw in the whole idea of cloud reliability by redundancy. You may have a million servers running across multiple countries, but if the distributed software for each virtual server has a bug, every server across the globe is affected. That's a single point of failure.

    1. Re:Single Point of Failure by Bert64 · · Score: 4, Insightful

      Thats a flaw in the idea of a monoculture, true redundancy has different software implementing the same basic standards...
      Like how the Internet is built from routers made by different vendors, cisco, juniper, software based linux/bsd devices etc. When new DoS vulnerabilities are found in one vendors kit it doesn`t take down the whole internet, because other vendors are immune.

      --
      http://spamdecoy.net - free throwaway anonymous email - avoid spam!
    2. Re:Single Point of Failure by MetalliQaZ · · Score: 1

      That's why I'm about to launch my new "Ionosphere" product. It is a cloud that runs on top of clouds. So when Azure fails Amazon picks up the slack and so on. Trademarked/copyrighted/patent pending suckas.

      -d

      --
      "Here Lies Philip J. Fry, named for his uncle, to carry on his spirit"
    3. Re:Single Point of Failure by WilyCoder · · Score: 1

      Unless there is a bug in the "same basic standards" that the heterogeneous systems use...

    4. Re:Single Point of Failure by Anonymous Coward · · Score: 0

      1. MS can't handle leap years
      2. Conquer the world, banish leap years
      3. Profit!

    5. Re:Single Point of Failure by snowgirl · · Score: 1

      Unless there is a bug in the "same basic standards" that the heterogeneous systems use...

      Ah... like the WMF exploit... I was explaining to someone at the time that the problem with the exploit was that it was functioning exactly as designed and intended. >_

      --
      WARNING! This girl exceeds the MAXIMUM SAFE standards established by the FDA for BRATTINESS
  20. A leap year issue? Are you SERIOUS? by msobkow · · Score: 5, Insightful

    Given how many DECADES leap year calculations have had to be done and how many years it's been since we fixed the Y2K issues (at great expense, I might add), it is absolutely UNACCEPTABLE for someone to blame a leap year calculation for down time.

    The DIRECTOR of the service division at Microsoft should be FIRED for this failure.

    Expect lawsuits from customers, Microsoft. Because this was a problem you KNEW about and should have written code to deal with.

    What a pathetic excuse for planning and testing on Microsoft's part.

    --
    I do not fail; I succeed at finding out what does not work.
    1. Re:A leap year issue? Are you SERIOUS? by Anonymous Coward · · Score: 0

      Makes you wonder why they don't have the test sever environment running like 2 weeks ahead of time so if there is a date issue it fails and they have 2 weeks notice to fix it.

    2. Re:A leap year issue? Are you SERIOUS? by Anonymous Coward · · Score: 3, Funny

      Shouldn't 'pathetic' be in uppercase?

    3. Re:A leap year issue? Are you SERIOUS? by Anonymous Coward · · Score: 0

      O KAY

      WE GET IT

      Microsoft - THE CULPRITS

    4. Re:A leap year issue? Are you SERIOUS? by Xacid · · Score: 1

      Authentication issues perhaps?

    5. Re:A leap year issue? Are you SERIOUS? by Anonymous Coward · · Score: 0

      The director should be fired? lmao. How about firing the ones responsible, the dumbfuck developers or their dumbfuck manager who didn't care that there was no testing done for leap year? Microsoft is big man. The director has nothing to do with this.

    6. Re:A leap year issue? Are you SERIOUS? by John+Hasler · · Score: 1

      > Expect lawsuits from customers...

      I'm sure it's covered by the TOS. That's an area where they DONT make mistakes.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    7. Re:A leap year issue? Are you SERIOUS? by ColdWetDog · · Score: 1

      Maybe everyone should get together and file a class action suit - the lawyers will get millions, the users will get 30 seconds of their life back.

      --
      Faster! Faster! Faster would be better!
    8. Re:A leap year issue? Are you SERIOUS? by Anonymous Coward · · Score: 0

      You're acting like it's the apocalyPS3 or something :P

    9. Re:A leap year issue? Are you SERIOUS? by 6031769 · · Score: 1

      The director has nothing to do with this.

      Really? Perhaps you can explain precisely what the director in charge of this service is doing to earn their salary?

      --
      Burns: We're building a casino!
      McAllister: Arrr. Give me 5 minutes.
    10. Re:A leap year issue? Are you SERIOUS? by firewrought · · Score: 2

      Given how many DECADES leap year calculations have had to be done and how many years it's been since we fixed the Y2K issues (at great expense, I might add), it is absolutely UNACCEPTABLE for someone to blame a leap year calculation for down time.

      The DIRECTOR of the service division at Microsoft should be FIRED for this failure.

      Expect lawsuits from customers, Microsoft. Because this was a problem you KNEW about and should have written code to deal with.

      What a pathetic excuse for planning and testing on Microsoft's part.

      (Sigh.) Another internet commentator gets righteous on a subject in which he is not an expert. How did this get modded insightful? What new information did it contribute other than blind rage? And firing the director, really? Management is responsible for specifying risk tolerance and enforcing a testing process, but technical folks should be making decisions about what's efficient and strategic to test.

      And do you really think this problem arose because they didn't write code to deal with leap years? I'm sure they are using an extremely well-tested base library of code that deals with exactly this, but date logic is used everywhere, and deciding what to test (to what depth) requires discernment. Oh yeah... maybe they could have squashed this bug by spending 2 or 3 days adjusting server clocks and creating fake test data across multiple subsystems and doing a full integration test at various set points. But what you don't see is that those 3 days cost them the time to find such-and-such 15 other bugs. Or that the testing schedule would have to extend by 6 months to test both the leap day concern and all other concerns deemed more risky than the leap-day concern but below the level of risk they were actually testing for.

      I'm not saying Microsoft has clean hands here. But it's definitely possible because even though we've known about leap years for centuries (excuse me... "DECADES"... got to use all caps to punctuate one's infuriation), because all software testing is a sequence of calculated gambles, and you can't judge the competence of a testing group by the occurrence of a single rare bug.

      --
      -1, Too Many Layers Of Abstraction
    11. Re:A leap year issue? Are you SERIOUS? by msobkow · · Score: 2

      I've been programming for over 30 years.

      Yes, I know damned well how widely date manipulation packages are used.

      And I know what this little thing called "regression testing" is.

      And I blame the MANAGEMENT for failing to ensure that the testing was done before approving rollout of the software. Why do you think management gets paid the big bucks? Because at the end of the day, THEY'RE responsible for ensuring that joe-schmoe-programmer and the QA team did their jobs before they sign off on rolling out product.

      --
      I do not fail; I succeed at finding out what does not work.
    12. Re:A leap year issue? Are you SERIOUS? by gnasher719 · · Score: 1

      And do you really think this problem arose because they didn't write code to deal with leap years? I'm sure they are using an extremely well-tested base library of code that deals with exactly this, but date logic is used everywhere, and deciding what to test (to what depth) requires discernment. Oh yeah... maybe they could have squashed this bug by spending 2 or 3 days adjusting server clocks and creating fake test data across multiple subsystems and doing a full integration test at various set points. But what you don't see is that those 3 days cost them the time to find such-and-such 15 other bugs. Or that the testing schedule would have to extend by 6 months to test both the leap day concern and all other concerns deemed more risky than the leap-day concern but below the level of risk they were actually testing for.

      An example posted on thedailywtf: A website lets you enter your date of birth and checks whether you are 21 or older. To do that, they take the current day, month, and year, subtract 21 from the year, convert to a date, and check whether this is before or after your date of birth. Guess what: On Feb 29th 2012, subtracting 21 from the year gives Feb 29th 1991, which throws an exception when converted to a date, which isn't caught.

    13. Re:A leap year issue? Are you SERIOUS? by Anonymous Coward · · Score: 0

      No, that wasn't part of the Mad Libs.

    14. Re:A leap year issue? Are you SERIOUS? by SplashMyBandit · · Score: 1

      Their testing should be able to move software an arbitrary amount of time forward and back in time. This is an utter failure of their development team and their test team, because these kinds of test are totally fundamental to testing any software. Running a server two weeks ahead of time is not a sufficiently good test. You have to be able to run the software at an arbitrary time and the developers should be the ones doing this from their desktop during development - it is too late to try testing it later.

    15. Re:A leap year issue? Are you SERIOUS? by Menkhaf · · Score: 1

      And do you really think this problem arose because they didn't write code to deal with leap years?

      Come on man. If they had written code that accounted correctly for leap years, they wouldn't have had an outage. Do you think it's just a coverup?
      And what's that nonsense about date logic? Use tried-and-true library functions for date manipulation, that's it. If you're doing embedded systems, you might have an excuse. ..and these days, not even then, given the amount of memory and the clock speeds. Bah, in my days all we had was a wirewrapped system built from a Motorola 68k, and we liked it!

      (except when one of the address bus wires got loose and we spent countless hours debugging it)

      --
      A proud member of the Onion-in-Hand alliance
    16. Re:A leap year issue? Are you SERIOUS? by kiwimate · · Score: 2

      Yep, as soon as they fire the guy at Apple who was responsible for the iPhone daylight saving bug in November 2010. And again in March 2011.

      Also Flickr, with their own leap year bug. And Sony.

      Not saying this isn't a black eye for MS - and yes, testing for leap year should be thought out ahead of time - but in fairness they're not the only people to have ever been caught out by something like this.

    17. Re:A leap year issue? Are you SERIOUS? by firewrought · · Score: 1

      And do you really think this problem arose because they didn't write code to deal with leap years?

      Come on man. If they had written code that accounted correctly for leap years, they wouldn't have had an outage. Do you think it's just a coverup? And what's that nonsense about date logic? Use tried-and-true library functions for date manipulation, that's it. If you're doing embedded systems, you might have an excuse. ..and these days, not even then, given the amount of memory and the clock speeds. Bah, in my days all we had was a wirewrapped system built from a Motorola 68k, and we liked it!

      (except when one of the address bus wires got loose and we spent countless hours debugging it)

      I'm saying that they almost certainly did use a tried-and-true library for date manipulation, but that doesn't protect you against incorrect usages/inferences in a particular system, and it doesn't ensure consistency between two different systems that need to talk to each other about date-related stuff.

      --
      -1, Too Many Layers Of Abstraction
    18. Re:A leap year issue? Are you SERIOUS? by firewrought · · Score: 1

      And management may be truly at fault, but it could just be a fluke too. You need more info to make that judgement.

      --
      -1, Too Many Layers Of Abstraction
    19. Re:A leap year issue? Are you SERIOUS? by thegarbz · · Score: 1

      DO you always randomly capitalise words?
      Do YOU always randomly capitalise words?
      Do you ALWAYS randomly capitalise words?
      Do you always RANDOMLY capitalise words?
      Do you always randomly CAPITALISE words?
      Do you always randomly capitalise WORDS?

      Some of those questions are true and some are false.

  21. Hummm by Anonymous Coward · · Score: 0

    I though we fixed all the clock stuff back in 2000? Guess not.

  22. It wasn't just Microsoft... by Anonymous Coward · · Score: 5, Interesting

    ...they just had the most publicly catastrophic failure. I just noticed that all of the Google Chat messages I received yesterday were sent to me at various times on December 31, 1969.

    And it also seems that I didn't even receive any of them until today, March 1, implying that they were incapable of even sending them yesterday.

    1. Re:It wasn't just Microsoft... by Anonymous Coward · · Score: 0

      Yeah, but the google entire google chat system didn't completely shit itself and fall over.
      Is it just me, or have Microsoft products in general never handled failure gracefully?

    2. Re:It wasn't just Microsoft... by Anonymous Coward · · Score: 0

      I just noticed that all of the Google Chat messages I received yesterday were sent to me at various times on December 31, 1969.

      Mine are all labelled Feb. 29. Are you sure you aren't just making shit up?

    3. Re:It wasn't just Microsoft... by CastrTroy · · Score: 1

      My Kobo eReader wouldn't boot yesterday. Haven't tried it today, maybe it's a related thing. I'll try when I get home. I sent in a support request, and they said when it cycles at the boot screen it's defective. It would be interesting if it all of a sudden started working today.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    4. Re:It wasn't just Microsoft... by KenAndCorey · · Score: 1

      Yup, I see the same thing in my Google Chat history... 12/31/69, even for this morning's chat. Not all days are 24 hours long (in local time, or if you have to deal with leap seconds). Not all years are 365 days long. February is not always 28 days long.

    5. Re:It wasn't just Microsoft... by dominious · · Score: 1

      Hey! We all know that all Google products are still in beta, so they can be excused. Now let us please go back to MS bashing, mmk?

  23. Re:TCO TIC by rogueippacket · · Score: 1

    Haha, my "Get The Facts" materials came with a free subscription to Wired if I do recall. The funny part is, I never actually got around to reading the Microsoft stuff - our receptionist recycled it without hesitation. I knew this had happened when I saw only a copy of Wired on my desk.

  24. A bad reputation for their development platform by Anonymous Coward · · Score: 0

    Done right, the date/time implementation being used should have had no problems automatically adjusting to a leap year.

    This is shoddy coding, pure and simple.

    This does not reflect well on those developing on MS platforms.

    In the year 2012, it is unthinkable for a date/time implementation to not handle this gracefully.

    Did they hire an intern to code up some half baked date class?

  25. Arthur David Olson is my hero by Bruce+Perens · · Score: 4, Informative

    30 years ago, Arthur David Olson started engineering a solution to this problem that persists to this day, and which he supported personally for all but the last few months. The systems I have that run his software have never even burped through legislative changes of the calendar, leap-seconds, and the Century leap-year day, which is a separate cycle from the 4-year one.

    1. Re:Arthur David Olson is my hero by Anonymous Coward · · Score: 0
    2. Re:Arthur David Olson is my hero by DamnStupidElf · · Score: 1

      Don't forget the 400-year cycle.

      And really, don't forget the ~7700 year cycle either. We'll have to deal with that in a couple thousand years and no doubt some ancient software will be running off the epoch still.

  26. One small step for Microsoft... by Anonymous Coward · · Score: 0

    ...one giant leap for the rest of us...?

    (edit: seriously, my captcha on this is "doomsday" :-D?=

  27. Not a surprise... by Ytsejam-03 · · Score: 1

    The story yesterday said that they were having a problem with certificate validation. The routine they were using to validate certificate expiration must not have been able to handle the leap year. I wonder what non-standard API they were using to process the expiration date. That reminds me of another article that I read yesterday.

  28. All bets are off... by Xacid · · Score: 1

    Bet it wont happen again next year!

  29. who implemented and tested their date calculations by Anonymous Coward · · Score: 0

    Idiots!
    aren't they using any unit testing? If they are, isn't a leap year an obvious test case?

  30. Does anyone know... by roc97007 · · Score: 2

    ...how Windows for cars and Windows for Warships fared during the leap year? Forget Y2K -- the apocalypse comes every four years...

    --
    Oliver's law of assumed responsibility: If you're seen fixing it, you will be blamed for breaking it.
    1. Re:Does anyone know... by Anonymous Coward · · Score: 1

      Windows for Cars crashed. Many of them!

    2. Re:Does anyone know... by Anonymous Coward · · Score: 0

      Actually it worked well. My Hundai Accent's media system is bulit on top of an LG SOAC system running Windows CE. It seemed to boot, and run fine. Even displayed the correct date IIRC.

    3. Re:Does anyone know... by roc97007 · · Score: 1

      Windows CE still exists? That's frightening.

      --
      Oliver's law of assumed responsibility: If you're seen fixing it, you will be blamed for breaking it.
  31. WTF? by UnknowingFool · · Score: 1

    While we jab at MS for the Zune fiasco, to their defense, they didn't write the subroutine that caused the problem and the most that happened was some of their customers could not play music on their Zunes for a while. Not a mission critical situation. But what the hell kind of calendar system is MS using in their mission critical software that cannot deal with leap years which comes every 4 years?

    --
    Well, there's spam egg sausage and spam, that's not got much spam in it.
  32. So Azure is just another front end to Excel? by Anonymous Coward · · Score: 0

    I seem to remember auditors at my first job (mid 1990's) telling me about needing to account for Excel's leap year problem when they used it. I can only find this issue today :

    http://en.wikipedia.org/wiki/Year_1900_problem

    1. Re:So Azure is just another front end to Excel? by VGPowerlord · · Score: 1

      Joel Spolsky has an article about the 1900 Leap Year bug.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    2. Re:So Azure is just another front end to Excel? by IwantToKeepAnon · · Score: 1

      I was just getting to that but you beat me to it. That article is a really good read. Sounds like MS has quite an array of date functions and storage mechanisms. At least they *did*. Some relevant bits... .....

      "February 29th. 1900 was a leap year! It's divisible by 4!"

      "Good guess, but no cigar," Ed said, and left me wondering for a while.

      Oops. I did some research. Years that are divisible by 100 are not leap years, unless they're also divisible by 400.

      1900 wasn't a leap year.

      "It's a bug in Excel!" I exclaimed.

      "Well, not really," said Ed. "We had to do it that way because we need to be able to import Lotus 123 worksheets."

      "So, it's a bug in Lotus 123?"

      "Yeah, but probably an intentional one. Lotus had to fit in 640K. That's not a lot of memory. If you ignore 1900, you can figure out if a given year is a leap year just by looking to see if the rightmost two bits are zero. That's really fast and easy. The Lotus guys probably figured it didn't matter to be wrong for those two months way in the past. It looks like the Basic guys wanted to be anal about those two months, so they moved the epoch one day back."

      "Aargh!" I said, and went off to study why there was a checkbox in the options dialog called 1904 Date System.

      The next day was the big BillG review. .....

      --
      "Happy families are all alike; every unhappy family is unhappy in its own way." -- Anna Karenina by Leo Tolstoy
  33. Attention Microsoft: by Howard+Beale · · Score: 5, Funny

    The following are leap years: 2016 2020 2024 2028 2032 2036 2040 You have been warned. After that, I'll probably be dead, so I won't care (unless Microsoft starts making pacemakers, which may end it for me...).

    1. Re:Attention Microsoft: by forkfail · · Score: 3, Funny

      The thought of an MS pacemaker EULA is pretty scary....

      --
      Check your premises.
    2. Re:Attention Microsoft: by Anonymous Coward · · Score: 0

      (unless Microsoft starts making pacemakers, which may end it for me...).

      It looks like your heart has stopped beating. Would you like to:

      - Open the Help file
      - Call Support
      - Reboot your Microsoft Pacemaker (may take several minutes)

    3. Re:Attention Microsoft: by thegarbz · · Score: 1

      The thought of an MS pacemaker being used on the 29th of Feb is pretty scary.

      Maybe it'll have a powered by Zune logo.

  34. FAIL by sproketboy · · Score: 0

    NTR

  35. Some of the most common leap-year bugs by tillerman35 · · Score: 5, Informative

    Some of the common leap year bugs that I've seen over the years:

    1. A matrix with the number of days per month:
    e.g. smallint dayspermonth[12]={31,28,31,30,31,30,31,31,30,31,30,31};
    Indexing into the matrix for February (index 1) ignores leap years.

    1. A matrix with 365 elements to represent a year's worth of something:
    e.g. smallint hightemps[365];
    This usually doesn't fail until Dec 31, when hightemp[mydate.dayofyear()-1] points to a non-existent element.
    Of course, if dayofyear is calculated using the matrix in the prior bug, it will fail invisibly since that will be incorrect
    as well.

    2. Quck-n-dirty subtract one year math:
    e.g. Convert date to char in YYYYDDMM format, convert char to int, subtract 10000, convert back to a char and then date.
    Why people do this when you can dateadd(year,mydate,-1) is that easy, I have no clue. But it breaks horridly when
    you use it to determine "one year ago today" from Feb 29.

    1. Re:Some of the most common leap-year bugs by tqk · · Score: 2

      ... Convert date to char in YYYYDDMM format ...

      A few years ago, one of the fixes I made to a front end security tool was to change all the YYYYDDMMs to YYYYMMDDs, to match up with all the other YYYYMMDDs elsewhere in the code.

      It's astonishing to me that having gone through Y2k, some people are *still* failing miserably at handling dates. I mean, it's not like YYYYMMDD is an ISO Standard or anything, right?

      --
      "Tongue tied and twisted, just an Earth bound misfit ..." -- Pink Floyd.
    2. Re:Some of the most common leap-year bugs by Anonymous Coward · · Score: 0

      3. Or you could use java SimpleDateformat to parse with the MMdd format 0229 thinking it would use the current year as base but it uses 1970 instead so you end up with 0301 or a crash.

    3. Re:Some of the most common leap-year bugs by TemporalBeing · · Score: 1

      ... Convert date to char in YYYYDDMM format ...

      A few years ago, one of the fixes I made to a front end security tool was to change all the YYYYDDMMs to YYYYMMDDs, to match up with all the other YYYYMMDDs elsewhere in the code.

      It's astonishing to me that having gone through Y2k, some people are *still* failing miserably at handling dates. I mean, it's not like YYYYMMDD is an ISO Standard or anything, right?

      Actually it is, along with a few other date notations - http://en.wikipedia.org/wiki/ISO_8601.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    4. Re:Some of the most common leap-year bugs by tqk · · Score: 1

      I mean, it's not like YYYYMMDD is an ISO Standard or anything, right?

      Actually it is ...

      Sorry, that was me being sarcastic (I guess I should have wrapped it in a <sarc> thingy or sumfin), but thanks for the wikipedia link. I'm going to enjoy reading that again.

      I wish the likes of Microsoft would read it (and read it, and read it, ...).

      --
      "Tongue tied and twisted, just an Earth bound misfit ..." -- Pink Floyd.
    5. Re:Some of the most common leap-year bugs by TemporalBeing · · Score: 1

      I mean, it's not like YYYYMMDD is an ISO Standard or anything, right?

      Actually it is ...

      Sorry, that was me being sarcastic (I guess I should have wrapped it in a <sarc> thingy or sumfin), but thanks for the wikipedia link. I'm going to enjoy reading that again.

      I wish the likes of Microsoft would read it (and read it, and read it, ...).

      I kind of figured; but you'd be surprised how many people didn't know about it. I wish most American's would read it; especially computer programmers!

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    6. Re:Some of the most common leap-year bugs by tqk · · Score: 1

      I wish most American's would read it; especially computer programmers!

      Indeedily doodly! Programmers, do you know that YYYYMMDD_filename in a directory listing sorts correctly, chronologically?

      If no, you're hacks or dilettants at best. You're just gumming up the works. ISO Standards exist for a reason!

      --
      "Tongue tied and twisted, just an Earth bound misfit ..." -- Pink Floyd.
  36. Microsoft Never Has Been Good At Time by Greyfox · · Score: 4, Interesting
    Dealing with time is hard, but it's been amusing to watch them experience problems solved by UNIX decades earlier. Daylight savings time was a constant problem for them in the early days, though they seem to have mostly got that ironed out. Every so often they seem to have a regression for a piece of new hardware. Maybe they'll eventually get it right.

    Funnily enough, I used to work at IBM doing OS/2 tech support. OS/2 and Windows NT share a common heritage, so a lot of the behind-the-scenes problems I witnessed in OS/2 were (And sometimes still are) problems with Windows. I'm not sure if this is one of them, but I got a call once from a guy who was trying to use his OS/2 system to track satellites. The problem was, the OS/2 timer API specified that you could set milliseconds but it didn't seem to work. I tracked it down to a timing driver which tracked two separate interrupts. The first interrupt happened every few milliseconds and would update the clock millis when that happened. However, if the system was busy it was possible to not handle that interrupt. There was also a system periodic interrupt every 1 second. When that occurred, the system hard-reset the milli time and incremented the seconds. So you could set the millis, but the clock would become inaccurate 1 second later. Just one example of how time has been a thorn in my side for my entire career. I wrote an APAR up on it which was promptly closed "Working as Designed." Dunno if he ever got it fixed...

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

  37. Typical Microsoft Spin by sl4shd0rk · · Score: 1

    "Oh Hai, yeah we just carried the one! It's all fixed now. Nothing to worry about, back to work"

    --
    Join the Slashcott! Feb 10 thru Feb 17!
    1. Re:Typical Microsoft Spin by Anonymous Coward · · Score: 0

      Versus what, a typical apple spin? "Oh Hai, you're counting it wrong"

  38. Time is tricky by inglorion_on_the_net · · Score: 1

    As I keep telling my fellow software developers, time is one of those things in software that tend to go wrong. Few developers give it the attention it deserves. Between different formats, timezones, changing timezones (including DST), leap seconds, and limits on what can be represented, there is plenty of opportunity for errors. And contrary to what you might hope, using an existing library to handle time does not absolve you from having to think about it, nor does that library always get it right.

    --
    Please correct me if I got my facts wrong.
    1. Re:Time is tricky by mj1856 · · Score: 1

      I agree to a point. If you want some real insight, check out how the folks working on noda-time (a .Net implementation of java's joda-time library) have described the issues with .Net's built-in DateTime handling: http://noda-time.blogspot.com/

      Although, nothing described there would account for this leap-day bug. My guess is that some developer decided to do his own math on dates rather than using the framework's implementation.

      I think it's a mistake to say "oh, well everyone's got it wrong so don't trust a library". You probably can get more out of a library than doing it yourself. However, you have to be aware of the implications of using that library.

      On the .Net platform in particular, Microsoft has made a mess of things by making developers think that DateTime, and TimeZoneInfo are "perfect". They're not.

    2. Re:Time is tricky by plopez · · Score: 1

      Time oriented applications can be tricky. Proper constraints in a DB for time oriented transaction are hard to get right. This guy basically wrote the book on it

      --
      putting the 'B' in LGBTQ+
  39. Gregorian calendar hacks Microsoft by aintnostranger · · Score: 1

    This just in, the Vatican is raided by the FBI in search of XVI century documents and the evil mastermind of today's attack: Pope Gregory. Joining the FBI are Seals Team Six and Chuck Norris, who brought an abacus. The team sprays Gregory's coffin with bullets. Obama announces the permanent change to a non-leap calendar. The world is safe. Cue in Aerosmith.

  40. No excuse by Anonymous Coward · · Score: 0

    I've been accommodating leap years into my date-handling code since 1982. The computation is quite simple, but it has to be done in order to convert a julian date/time value to calendar date/time, or to do simple date arithmetic. At this point in time, there is absolutely zero, zilch, no excuse for this sort of bug to exist in ANY production-quality code. So, I guess that MS software is NOT production-ready? :rolleyes:

    1. Re:No excuse by Anonymous Coward · · Score: 0

      bool Is_leap_year = (((year % 4) == 0) && (((year % 100) != 0) || ((year % 400) == 0)));

      Leap seconds? Entirely another issue! :-)

  41. watch the USPTO for a new application from MSFT by Locutus · · Score: 1

    on how to handle date functions with a claim specifically for leap year. lol

    Then watch for its approval and subsequent issuance.

    LoB

    --
    "Anyone who stands out in the middle of a road looks like roadkill to me." --Linus
  42. Never learn by Anonymous Coward · · Score: 0

    It never ceases to amaze me that software developers have not learned the one simple lesson of time - every internal representation and computation on time needs to be done using seconds-since-epoch. Always. No exceptions. The *only* time that one every deal with a human-formatted time is when reading in a value, or printing out a value. It never, ever, is stored or manipulated in any form other than seconds-since-epoch.

    Do that, and you never have these sorts of bugs.

    But oddly enough, this is still a debate that I have to run through over and over again with our new developers.

  43. Well by ledow · · Score: 1

    Some code I knocked up a few months ago had a problem with the leap-day just gone.

    Difference being, that script wasn't meant to run for more than a few days, was knocked up in an hour, was untested, and didn't run anything critical at all (it moved scanned PDF files into an archive folder for a scanner used by precisely two people).

    Seriously, Microsoft, you have a system that you expect government to use and you can't even work around a leap-day in advance?

    1. Re:Well by isorox · · Score: 1

      Some code I knocked up a few months ago had a problem with the leap-day just gone.

      Difference being, that script wasn't meant to run for more than a few days, was knocked up in an hour, was untested, and didn't run anything critical at all (it moved scanned PDF files into an archive folder for a scanner used by precisely two people).

      Seriously, Microsoft, you have a system that you expect government to use and you can't even work around a leap-day in advance?

      I had some code which I wrote in 2009 which used an old version of an internal library which itself used a built-in apache-commons lib. The code I had was meant to be replaced 6 months later, but never was in once case. The internal library was replaces 12 months later, but never was. Globally I had 98 servers running the new code, and 1 which hadn't been upgraded.

    2. Re:Well by plopez · · Score: 1

      There's nothing more permanent than temporary code.

      --
      putting the 'B' in LGBTQ+
  44. Did you miss the part where he didn't receive them by jerk · · Score: 1

    ...until the next day?

  45. Perfect example... by YankDownUnder · · Score: 1

    ...of "The Trustworthy Computing Initiative". HAVE to believe them - hey, Microsoft's spent a lot of money in advertising to tell us how good they are, eh?

    --
    YankDownUnder Veni, Vidi, volo in domum redire
  46. Again???? Seriously MS??? by Anonymous Coward · · Score: 0

    Wasn't this the same bug that affected Zune 4 years ago????? My god, MS won't learn.

    Let's bet, which MS product will fail on 2016

  47. testing the cloud by Anonymous Coward · · Score: 0

    They need to figure out how to better test it!

  48. Date Error by Murdoch5 · · Score: 1

    Microsoft had a computer date bug? Armature hour!

    1. Re:Date Error by Anonymous Coward · · Score: 0

      Microsoft had a computer date bug? Armature hour!

      I think you mean "amateur day".

  49. Coders should use seconds/milliseconds, that's it by Anonymous Coward · · Score: 0

    I'm always amazed by the typical beginner mistake where people do actually store dates as something else than timestamps in so many places, when there's absolutely zero reason to do so.

    Most programmers aren't aware that a minute is not made of 60 seconds (hint: they can be 59 or 61 seconds). Most programmers aren't aware that a day isn't 24 hours. In short: they get their invariants wrong.

    The real tragedy is that in most applications users don't even need to *see* any exact date. Date should always be stored as a point in time, stored for example in seconds or milliseconds from the epoch.

    But, no, they get it all wrong: they store date as complex objects in their DB, then they make even more complex computation like : "if we're this or that month add 30 day to get to next month, otherwise add 31 days, or if we're in february add 28 days". And it's totally silly because in most application / billing scheme, the user don't give a flying F**K if there's a one or two day inaccuracy (e.g. I get billed monthly for my electricity: sometimes the bill is dated from the 4th of the month, sometimes it's the 5th, then back to 4th, etc. and NOBODY GIVES A FLYING F*CK).

    That said I didn't expect anything else from the geniuses at MS...

  50. Rookie mistake! Learn from it. by plopez · · Score: 1

    That's all I can say. Which is what you get with a bunch of low bid contractor's monkey programmers.

    It reminds of a post a few years ago, I wish I could find it, where the poster stated that the software running on some MS froze up about every 50 days requiring a reboot. No one could figure out why, the 32 bit TimeGetTime functions rolls over at about, you guessed it, every 49.71 days. Defensive coding people!

    As it is MS Excel does not handle leap years, IIRC. You have to "roll your own" even when doing spreadsheet dates.

    Another anecdote. We were migrating an application and discovered a bunch of financial transactions which occurred on June 31st. Defensive coding people! Verify your input! Verify your date arithmetic!

    --
    putting the 'B' in LGBTQ+
  51. Don't you just love leap years by vakuona · · Score: 1

    I have my own computer/human based leap year story. This was probably human error, but still.

    I was contracted at a company for the month of February, and was granted network access until then. I left the office on the 28, having left the computer to do a run (would take 8 hours, wasn't waiting and no remote access). At midnight, the system revoked my access, my jobs failed to complete, and I walked in in the morning to find that I had effectively wasted my second last day on my contract.

    I mean, seriously, who revokes systems access at midnight? What happened to a grace period at the end? (If they really didn't want me in, all they had to do was to physically deny me the access). And seriously, if you are giving access for the month of February (or March, or April etc), and you really really have to revoke access as soon as the person leaves, Revoke it on the 1st of the next month.

    Rant over.

  52. Re: a UT internal time yet by neonsignal · · Score: 1

    Ain't gonna happen. They won't introduce a UTC internal time. And as we move to UEFI based machines, we will all be forced to use at least indirectly use local time (though UEFI does keep track of the timezone and daylight savings mode). So if there is a bug in the UEFI timezone code, good luck to you...

  53. Leap Day The first International Holiday by nicoleb_x · · Score: 1

    The most obvious way to mitigate these failures is to enact the first international holiday, Leap Day. The world should slow down every ~4 years and take the day off. This will allow those who are date challenged to quietly fix their problems. Unfortunately, this means no special events and maybe we should just shut down the Internet too for a "make and mend" day.

  54. HA HA by Anonymous Coward · · Score: 0

    HA HA HA HA HA HA HA HA HA HA HA HA HA HA !

    And you think the 'cloud' is safe?!

    HA HA HA HA HA HA HA HA HA HA HA HA HA HA !

  55. Be thankful by Anonymous Coward · · Score: 0

    That you don't have parents who thought it useful to only celebrate a birthday when it actually occurred.

  56. Blue screen of death in the Cloud by quax · · Score: 1

    Will never look at a blue sky the same.

  57. Unbelievable! by Anonymous Coward · · Score: 0

    My Casio watch handled Feb 29th without any problems at all (which actually surprised me - I thought I might have to have adjusted the date manually this year). M$ must have their heads in the "clouds"! ;-)

  58. Azure Quality Control by Anonymous Coward · · Score: 0

    This failure is another example of how MS does little regression testing on their software. It is cheaper for MS to let the customers(users) find the bugs than for MS to release a quality product. MS is still issuing patches and bug fixes for WinXP 10 years after the product was introduced.

  59. When you have so many date formats... by TemporalBeing · · Score: 1

    ...it's hardly surprising. Seriously, Microsoft has numerous date formats within their system with which to work. Want to the know the current time? You have to use SYSTEMTIME. Need to know the date-time stamp for a file? Then you need to use FILETIME; but why would you need to have a file dated in the 17th century?

    --
    Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    1. Re:When you have so many date formats... by RockDoctor · · Score: 1

      but why would you need to have a file dated in the 17th century?

      I deal with data whose comprehensiveness and detail (generally) increases with time. I work in a subject where important, empirical data has been collected and recorded (and taxed) since Roman times. I can perfectly well see that I'd specify applications for reporting the changing state of our understanding of a particular area. And one place to put the "this record was generated at this time" meta data would be in the file timestamp.

      It's pretty unlikely that I'd need something that went beyond the working range of the Julian date. It's pretty unlikely that I'd come within several millennia of testing the limits of such a filesystem. Hmmm, is that enough lee way? Probably, but I'm not sure. I'd have to look at things in more detail than is warrented for an off-the-cuff posting on Slashdot.

      Meanwhile, it's back to a bodged-together solution to a fucked-up data provider who can't store data for longer than 20 days, on an opertion that is pushing 70 days now, and continuing.

      --
      Birds are not dinosaur descendants;birds are dinosaurs, for all useful meanings of "birds", "are" and "dinosaurs"
    2. Re:When you have so many date formats... by TemporalBeing · · Score: 1

      but why would you need to have a file dated in the 17th century?

      I deal with data whose comprehensiveness and detail (generally) increases with time. I work in a subject where important, empirical data has been collected and recorded (and taxed) since Roman times. I can perfectly well see that I'd specify applications for reporting the changing state of our understanding of a particular area. And one place to put the "this record was generated at this time" meta data would be in the file timestamp.

      Or how about leave the created/modified/access time stamps alone and introduce your own meta data field? You're probably working with specialized files already, so make it a part of the inherent work instead of doing something that a mere file copy will break.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)