Originally posted by: nik@zurich.ibm.com
We have been using
TZ=MET-01MDT-02,M3.5.0/02:00:00,M10.5.0/03:00:00
successfully for many years now to specify the timezone valid in Zurich (and most of Central Europe).
We upgraded a lot of machines to AIX 6100-07-01-1141 a few days ago. Today, we realized that local time information as displayed by xclock (and many other applications including sendmail and syslog) had changed from Daylight Savings Time to normal during the night. According to our TZ variable, this should have happened on the last Sunday in October, i.e. 5 days later.
Here are a few related observations:
1. The problem DOES NOT show in the 'date' command.
2. The problem DOES NOT occur with TZ=Europe/Zurich.
However, that setting does not work on AIX 5.
On AIX 6, it works with 'date', but not with strftime().
3. The problem DID NOT occur on machines that are
still on AIX 6100-06-05-1115.
4. The problem DID NOT occur on machines that were
upgraded to AIX 5300-12-05-1140.
5. The problem DID occur on a machine that was
upgraded to AIX 7100-01-01-1141.
Experiments with a program that uses strftime() showed that, on AIX 6100-07-01-1141, the M10.5.0 part in our TZ variable is somehow misinterpreted to mean the last Tuesday of the month instead of the last Sunday. Using M10.5.1 instead, the time change happens on the last Wednesday, and using M10.5.5, it happens on the last Sunday (though, in that case, it should happen on the last Friday). On AIX 6100-07-01-1141, the value returned by the %Z format specifier to strftime() changes from MDT to MET when the hour returned by %H switches back from 03 to 02. This makes at least some sense, and it keeps the human-readable date unique if %Z is included. On 7100-01-01-1141, things are even worse, because %Z always returns MDT, regardless of whether the %H value does or does not correspond to Daylight Savings Time.
I wonder whether this bug is already known, and whether a fix is available.
#AIX-Forum