Red Hat Bugzilla – Bug 227983
RHEL-4.4 DST changes required for libgcj4
Last modified: 2007-11-16 20:14:55 EST
+++ This bug was initially created as a clone of Bug #227884 +++
Description of problem:
Some customers consider tzdata 2005m changes as "the upcoming DST" changes,
as if tzdata did not change 20 times or so a year.
So guess the question is if gcj has its own tzdata copy like the various
proprietary JVMs have and its own tzdata parser.
I see something what looks like a tzdata file parser in
libjava/classpath/vm/reference/java/util/VMTimeZone.java), but am not sure what
exactly it is used for and whether that reads just /etc/localtime, or other
/usr/share/zoneinfo/ files too.
Additionally there seems to be a hardcoded extremely simplified data
in libjava/classpath/java/util/TimeZone.java, apparently generated with
libjava/classpath/scripts/timezones.pl from tzdata and very outdated.
I rerun that script on tzdata2007a to see what the differences would be
and patch is attached.
More importantly, I wonder whether it really has to have a pregenerated
table compiled in, whether that's not something it should create on the fly
by reading /usr/share/zoneinfo/ files.
Version-Release number of selected component (if applicable):
-- Additional comment from email@example.com on 2007-02-08 14:32 EST --
Created an attachment (id=147693)
libgcj patch for DST timezone changes
-- Additional comment from firstname.lastname@example.org on 2007-02-09 05:48 EST --
That patch was against trunk and, furthermore, isn't the latest.
There is a newer patch against trunk at
which I'm going to backport.
Apparently there are several bugs in the TimeZone code, but those need a lot
of work and aren't appropriate for the update now, so guess just the updated
tables should be enough for RHEL4.5.
gcc4 packages also include their own libgcj4 with the same problem.
Testcase in #227884, just change gcj to gcj4 and gij to gij4 in the instructions.
Built as gcc4-4.1.1-52.EL4.
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.