Effect of Mauritian summer time on Linux systems

As you all know, Daylight Saving Time is being implemented in Mauritius as from this Sunday 26 October 2008 at 02:00. The exact rules are

# Rule  NAME    FROM    TO      TYPE    IN      ON      AT      SAVE    LETTER/S
Rule Mauritius  2008    max     -       Oct     lastSun 2:00s   1:00    S
Rule Mauritius  2009    max     -       Mar     lastSun 2:00s   0       -

(obtained from the timezone database as used in GNU/Linux, FreeBSD, NetBSD, OpenBSD, Cygwin, DJGPP, AIX, Mac OS X, OpenVMS, Oracle Database, Solaris, Tru64, and UnixWare — everything important except Windows in fact. Read this if you’re still using that bizarre OS. Thanks to Swadesh Bucktowar of DCDM Consulting for that.)

The rules mean that:

  • On the last Sunday of October 2008 (the 26th) at exactly 02:00, we will save 1 hour (i.e. Mauritius Time will become GMT+5)
  • On the last Sunday of March 2009 (the 29th) at exactly 02:00, we will stop having the 1 hour saving (i.e. Mauritian Time will become GMT+4)
  • and this will repeat every year thereafter.

In more geekish words, here is what will happen:

Sat Oct 25 21:59:59 2008 UTC = Sun Oct 26 01:59:59 2008 MUT isdst=0
Sat Oct 25 22:00:00 2008 UTC = Sun Oct 26 03:00:00 2008 MUST isdst=1
Sat Mar 28 20:59:59 2009 UTC = Sun Mar 29 01:59:59 2009 MUST isdst=1
Sat Mar 28 21:00:00 2009 UTC = Sun Mar 29 01:00:00 2009 MUT isdst=0


Updated GNU/Linux, FreeBSD, NetBSD, OpenBSD, Cygwin, DJGPP, AIX, Mac OS X, OpenVMS, Oracle Database, Solaris, Tru64, and UnixWare systems will automatically change to the Mauritian Daylight Saving Time on Sunday 26 October.

The important word here is updated. If your system has not been updated for ages, then don’t expect the time to change by itself. You’ll have to do it manually.

I can confirm as of today 17 October 2008 that the following fully updated Linux distributions will switch to Mauritian Daylight Saving Time correctly and automatically:

  • Ubuntu 8.04 and derivatives like Kubuntu => use tzdata_2008h => OK.
  • Ubuntu 7.10 and derivatives like Kubuntu => use tzdata_2008h => OK.
  • Ubuntu 7.04 and derivatives like Kubuntu => use tzdata_2008h => OK.
  • Redhat Enterprise Linux 5 Client or Server => use tzdata-2008f => OK.

On the other hand, the following Linux distributions use an old version of tzdata which knows nothing of the Mauritian’s Government decision and the date and time will have to be adjusted manually (or, better, by replacing the old timezone database by a more recent one):

  • Redhat Enterprise Linux 4 => uses tzdata-2004e => BAD
  • Redhat Enterprise Linux 3 => uses tzdata-2003c => BAD
  • Redhat Enterprise Linux 2 AS => uses glibc-2.2.4 => BAD

(I’ve not checked for other distributions. Can someone please tell me about SuSE as I know this distribution is being used by some corporate users here?)

An important caveat

[Thank to David Marjolin for his important observation that the following won't be an issue this Sunday but will surely pose a problem in March 2009]

It’s nice to know that the time will automatically change on Sunday but what about transactions occurring at that time? For example, let’s say someone uses an ATM at 01:59:58 on Sunday and this is normally what should have happened (let’s assume that this is done in one transaction containing two SQL statements with a 4 seconds time interval between them):

01:59:58 => First SQL statement
02:00:02 => Second SQL statement

But now, with this Daylight Saving Time thing, this is what will happen:

01:59:58 => First SQL statement
03:00:02 => Second SQL statement

Hardly problematic. But what about March 2009? The same transaction will occur thus:

01:59:58 => First SQL statement
01:00:02 => Second SQL statement

We’ll go back in time!

Will this work? Well, one can argue that systems developed in the US or in Europe surely take this in account (by recording everything using GMT maybe.) But what about systems developed in Mauritius where this eventuality was not thought of? Maybe we’ll have to modify them. Or maybe the best thing to do, as pointed out by Swadesh when I talked to him today, is simply to disallow all transactions from 01:59:00 to the new 02:00:00 (i.e. for one hour) if this is possible, of course.

What do you think?

Comments

  1. Rechard Itoola says:

    Being the IT Support & Develeopment Officer at MTMD Ltd., the good thing for most businesses in Mauritius is that they are all closed at that time(2am). But unknowingly to many, a lot of business transactions are done at night: airport, call centres, hotels, overnight scheduled backups, etc.
    For MTMD, as a matter a precaution, all servers will be shutdown and restart on Monday morning. (we can afford to do that!) The date will then be manually changed. May be a reboot is necessary for proper startup of OS.

  2. i don’t understand this at all, we will still get the same amount of sun and i shall still be waking up late whatever the government decides.

    now coming to the interesting part:

    But now, with this Daylight Saving Time thing, this is what will happen:

    01:59:58 => First SQL statement

    01:00:02 => Second SQL statement

    I’m curious to see what happens in such a system specially if it takes time into account.

    but if i was the person in charge of such a system, i would definitely have disable transactions during that shifting time so as not get get any unwantd surprise.

    too bad we dn’t have the ubs bus running at this time, we could have sold the used tickets after usage during that time :p could have get 1 cig out of it..lol.. just for the fun

  3. Didier lokhee says:

    Thanks avinash, I was just looking for that and I should have known you would be the one with the answers.

  4. “On the last Sunday of October 2008 (the 26th) at exactly 02:00, we will save 1 hour (i.e. Mauritius Time will become GMT+3)”

    Won’t it be GMT+5?

    Looks like Windows users will be having a lot of problems. :S

  5. It’s GMT+5, not GMT+3. :P

    I don’t understand why Windows users should have any problem? Just change the timezone to GMT+5 – Islamabad, Karachi. :)

  6. Yeah, Jevin and carrotmadman6. We’ll be at GMT+5 during DST.

  7. Sandeep says:

    well, i fail to understand how this “1” hour of daylight will help in “saving” energy. If the daylight was 2hrs more, then maybe it would make an impact. But the way it is, its more like a joke to me.

    Selven pointed out something very critical. Some dbms do take into account of the time, especially in banking sector. Some “wise” people can take advantage of this…

  8. “I’m curious to see what happens in such a system specially if it takes time into account.”

    My team faced that issue in maintaining a collaboration software whereby transactions had their IDs merged with time from the system clock of the client (not server.)
    The system was flawed from start (they already had canceled events, deadlocks and wrong events occuring) but had we waited till the time change, the company would have been at loss.

    Not every system can afford a restart. I’m guess minor errors will occur. I suggest locking down system for a limited amount of time and synchronising time according to a central server (your own not a public one.)

    AFAIK, OpenSuse 10.2 + shouldn’t have any issues through updates.

    I await the time votex to open up next week. (The LHC is toast for now. @ least, we get our own Mauritian vortex. :P) [/joke]

  9. “I don’t understand why Windows users should have any problem? Just change the timezone to GMT+5 – Islamabad, Karachi.”

    And all your meetings on Outlook will move one hour. ;)

  10. Jevin, there’s a tool for updating Outlook to match the change.

    URL: http://www.microsoft.com/downloads/details.aspx?familyid=%20E343A233-B9C8-4652-9DD8-AE0F1AF62568

  11. working with some mobile operators, we have already done some dry run. and from this side since most of the system are clusters..the services are stopped..clusters halted..time updated clusters restarted and service resumed. normally this whole process should take around 30 mins at maximum, its not the actual time change which takes that much time, rather the time between stopping and resuming service..the time change..depending on the operator will b done manually using the date command on HP-UX/Solaris..while some that have their local NTP servers will synchronise with them.

    now the question am asking myself..for us ppl working on that day for that particular operation, we should be already on site by 11 and leave after at least 1 after the service has been resumed as a precaution. now normally this will be around 4 am..in normal time..but now it will be 5 am..am thinking..should i be paid for 5 hr or 6 hrs???

  12. Shah there’s an easier solution here:

    http://blogs.technet.com/dst2007/archive/2008/10/02/guidance-for-mauritius-on-upcoming-daylight-saving-time-implementation-for-2008-2009.aspx

    It adds to the registry a new timezone for Mauritius with DST.

  13. 1 more thing, did you know that there are systems that just will have to just use the old time itself, :p bann pretre et bann astrologue :p

  14. LOL

    Astrology freak: “Saturn and Jupiter will cross their elliptical path on Saturday.

    Taurus, your energy is so powerful right now that it will separate the good people from the bad. You will be able to select people who make a good contribution towards the revival of the economy. The good folks are the ones who are attracted and enraptured by all the good vibes you are putting out — so, capture them, and the bad folks are the ones who are intimidated by it – so use a taser on them. Taurus will be in mating season and Libra may fall under its charm. However, due to daylight saving issues, both parties should wait 1 more hour after the sun is at its highest point in the skies to engage in courtship, and hunting of the good and evil guys. If your sign is Capricorn, have an additional 5 hour sleep because DST is not compatible with your horns.”

    Note: The stars and ancient lights shall not be held responsible of any daylight saving conflict.

  15. Jeshan says:

    Damn! Ubuntu added 2 hours instead of 1 !! :(

  16. Hi Jeshan,

    What version of Ubuntu do you use? Mine worked just fine. I use 8.04. I’ve noticed something though. It’s much better to use the “manual” mode instead of the “NTP synchronisation” mode as it seems that some existing NTP servers are still using the “old” i.e. pre-Mauritian summertime tzdata.

    My MacBook also has worked correctly. As well as Google who has sent me my SMS reminders on time.

    My Emtel mobile phone did not though even if I had selected “Auto update date/time”.

    Avinash

  17. Jeshan says:

    I use ubuntu intrepid (beta).. .was too impatient! :P

  18. :D hehe time changed automatically and perfectly :D

  19. neoz_online says:

    check the following link it provides a more comprehensive info for windows user
    a reg fix to add The new time zone “(GMT+04:00) Port Louis”

    http://blogs.technet.com/dst2007/archive/2008/10/02/guidance-for-mauritius-on-upcoming-daylight-saving-time-implementation-for-2008-2009.aspx

  20. Satya Damry says:

    Anyone thought about Microsoft v/s Java/Unix clock compatibility? I can already see problems. Wasted whole day on this !!

  21. Les commentaires dans le fichier africa … notent les quelques incohérences quant aux choix des dates.

    :)

  22. C’est cool d’être Africain :-)

  23. Bonjour,

    Voilà pour les users Mac, mais il faut voir.
    http://brickybox.com/2009/10/18/os-x-fix-argentina-dst-october-2009

    La compilation est nécessaire.

    Cordialement,
    Dominique

  24. J’ai cru comprendre qu’Apple met à jour ICU et la base de données zoneinfo à chaque mis à jour du système. D’où ma décision d’utiliser le fuseau horaire Victoria (Seychelles) jusqu’à 10.5.9 (je ne suis pas encore passé à Snow Leopard…)

Speak Your Mind

*