Predictable problems with 3-character time zones, especially the EST/EST5EDT split.
Masayoshi Okutsu
Masayoshi.Okutsu at Sun.COM
Wed Dec 20 07:38:02 UTC 2006
Paul Eggert wrote:
> I suspect Java picked "EST" up only in 2005r because Java ignores the
> "backward" file.
>
Java doesn't ignore the backward file, but it has its own backward file
which has the priority. "EST" is an alias of "America/New_York" in the
Java's backward file. However, when the EST data file exists, Java
runtime takes the data file.
So, a simple workaround is to remove the data file. That enables the
(Java) alias.
> In retrospect perhaps we should have omitted these System V names, as
> they're now causing more trouble with Java than they're worth.
>
> Or perhaps we should move them to the "systemv" file now. But
> that is Arthur's call.
>
> From the Java point of view, I would simply remove all the System V
> names from Java. I don't see the point of them; they just cause
> trouble. That is, I would pretend that the following entries don't
> exist in the "northamerica" file, so that you can continue with the
> traditional Java interpretation for them.
>
> # Zone NAME GMTOFF RULES FORMAT [UNTIL]
> Zone EST -5:00 - EST
> Zone MST -7:00 - MST
> Zone HST -10:00 - HST
> Zone EST5EDT -5:00 US E%sT
> Zone CST6CDT -6:00 US C%sT
> Zone MST7MDT -7:00 US M%sT
> Zone PST8PDT -8:00 US P%sT
Time zone data for Java is maintained by multiple organizations at Sun.
So, I thought it'd be too complicated if all time zone data maintainers
at Sun had to remove these lines every time a new tzdata is released.
The use of the 3-letter time zone IDs was deprecated years ago. But
seems like there are applications that hard code "EST" in its program.
Thanks,
Masayoshi
More information about the tz
mailing list