<i18n dev> Open Jdk Timezone bug?

Bill Tims (RSI) btims at rsitex.com
Thu Dec 3 06:31:31 PST 2009


Andrew/Masayoshi
 
    1) I installed openjdk-6-jdk(I only had the jre-lib installed
before)  and reran the following code.  This didn't seem to make any
difference.
    2) Andrew's last email references the tzdata-java package.  
        After the run with the jdk installed I installed the tzdata-java
package and now have the /usr/share/javazi/.
        Yet I still get the same results with different tz data  AND it
still uses CST6CDT even after I told it to use America/Chicago.  I'm
guessing that the ZoneInfoMappings file is causing this, the Chicago
file seems to be a subset of the CST6CDT file.
         When I use zdump to dump the CST6CDT file (it doesn't seem to
matter which one I use, I get the same results for all of them), the
first few lines are:
CST6CDT  Fri Dec 13 20:45:52 1901 UTC = Fri Dec 13 14:45:52 1901 CST
isdst=0 gmtoff=-21600
CST6CDT  Sat Dec 14 20:45:52 1901 UTC = Sat Dec 14 14:45:52 1901 CST
isdst=0 gmtoff=-21600
CST6CDT  Sun Mar 31 07:59:59 1918 UTC = Sun Mar 31 01:59:59 1918 CST
isdst=0 gmtoff=-21600
CST6CDT  Sun Mar 31 08:00:00 1918 UTC = Sun Mar 31 03:00:00 1918 CDT
isdst=1 gmtoff=-18000
        The first instance CDT is in 1918, I don't understand why the
offset is being used.  I am really getting confused here.
 
 
Bill
 
    public void test2() {
 
System.out.println("version="+System.getProperty("java.version"));
        System.out.println("vendor="+System.getProperty("java.vendor"));
 
System.out.println("java.vm.specification.version="+System.getProperty("
java.vm.specification.version"));
 
System.out.println("java.vm.specification.vendor="+System.getProperty("j
ava.vm.specification.vendor"));
 
System.out.println("java.vm.version="+System.getProperty("java.vm.versio
n"));
 
System.out.println("java.vm.vendor="+System.getProperty("java.vm.vendor"
));
        Calendar cal = Calendar.getInstance();
        TimeZone tz = TimeZone.getDefault();
        tz.setID("America/Chicago");
        System.out.println("timezone.id="+tz.getID());
        cal.set(1900, Calendar.JANUARY,1,0,0,0);
        System.out.println("January, 1900 timezone
offset:"+tz.getOffset(GregorianCalendar.AD, 1900,0, 1, 1, 1));
    }
 
       and got:
version=1.6.0_0
vendor=Sun Microsystems Inc.
java.vm.specification.version=1.0
java.vm.specification.vendor=Sun Microsystems Inc.
java.vm.version=1.6.0_0-b11
java.vm.vendor=Sun Microsystems Inc.
timezone.id=America/Chicago
January, 1900 timezone offset:-18000000
========================================================================
===================
   The relevant portion of the strace with the openjdk-6-jdk is:
14565 gettimeofday({1259842962, 719472}, NULL) = 0
14565 stat64("/usr/share/javazi/ZoneInfoMappings", 0xb735dd4c) = -1
ENOENT (No such file or directory)
14565 gettimeofday({1259842962, 719759}, NULL) = 0
14565 _llseek(3, 48488574, [48488574], SEEK_SET) = 0
14565 read(3,
"PK\3\4\n\0\0\0\0\0\255\236>:H\250\221\265$\5\0\0$\5\0\0"..., 30) = 30
14565 _llseek(3, 48488642, [48488642], SEEK_SET) = 0
14565 read(3,
"\312\376\272\276\0\0\0001\0R\t\0\22\0000\n\0\23\0001\7"..., 1316) =
1316
14565 gettimeofday({1259842962, 720973}, NULL) = 0
14565 gettimeofday({1259842962, 721007}, NULL) = 0
14565 gettimeofday({1259842962, 721021}, NULL) = 0
14565 gettimeofday({1259842962, 721026}, NULL) = 0
14565 gettimeofday({1259842962, 721853}, NULL) = 0
14565 gettimeofday({1259842962, 722020}, NULL) = 0
14565 gettimeofday({1259842962, 722175}, NULL) = 0
14565 gettimeofday({1259842962, 722269}, NULL) = 0
14565 gettimeofday({1259842962, 722276}, NULL) = 0
14565 gettimeofday({1259842962, 722279}, NULL) = 0
14565 gettimeofday({1259842962, 722838}, NULL) = 0
14565 access("/usr/lib/jvm/java-6-openjdk/jre/lib/zi/SystemV/CST6CDT",
R_OK) = 0
14565 stat64("/usr/lib/jvm/java-6-openjdk/jre/lib/zi/SystemV/CST6CDT",
{st_mode=S_IFREG|0644, st_size=2288, ...}) = 0
14565 open("/usr/lib/jvm/java-6-openjdk/jre/lib/zi/SystemV/CST6CDT",
O_RDONLY|O_LARGEFILE) = 5
14565 fstat64(5, {st_mode=S_IFREG|0644, st_size=2288, ...}) = 0
14565 fcntl64(5, F_GETFD)               = 0
14565 fcntl64(5, F_SETFD, FD_CLOEXEC)   = 0
14565 read(5,
"javazi\0\1\4\10\240\377\337\332\340\35\300\0!\377\340;"..., 2288) =
2288
14565 close(5)                          = 0
========================================================================
===================
This is strace data generated after the tzdata-java package was
installed.
 
14662 stat64("/usr/share/javazi/ZoneInfoMappings",
{st_mode=S_IFREG|0644, st_size=14640, ...}) = 0
14662 gettimeofday({1259843375, 580436}, NULL) = 0
14662 _llseek(3, 48488574, [48488574], SEEK_SET) = 0
14662 read(3,
"PK\3\4\n\0\0\0\0\0\255\236>:H\250\221\265$\5\0\0$\5\0\0"..., 30) = 30
14662 _llseek(3, 48488642, [48488642], SEEK_SET) = 0
14662 read(3,
"\312\376\272\276\0\0\0001\0R\t\0\22\0000\n\0\23\0001\7"..., 1316) =
1316
14662 gettimeofday({1259843375, 581372}, NULL) = 0
14662 gettimeofday({1259843375, 581552}, NULL) = 0
14662 gettimeofday({1259843375, 581750}, NULL) = 0
14662 gettimeofday({1259843375, 581937}, NULL) = 0
14662 gettimeofday({1259843375, 582143}, NULL) = 0
14662 gettimeofday({1259843375, 582338}, NULL) = 0
14662 gettimeofday({1259843375, 582509}, NULL) = 0
14662 gettimeofday({1259843375, 582682}, NULL) = 0
14662 gettimeofday({1259843375, 582865}, NULL) = 0
14662 gettimeofday({1259843375, 583036}, NULL) = 0
14662 gettimeofday({1259843375, 583206}, NULL) = 0
14662 access("/usr/share/javazi/SystemV/CST6CDT", R_OK) = 0
14662 stat64("/usr/share/javazi/SystemV/CST6CDT", {st_mode=S_IFREG|0644,
st_size=2288, ...}) = 0
14662 open("/usr/share/javazi/SystemV/CST6CDT", O_RDONLY|O_LARGEFILE) =
5
14662 fstat64(5, {st_mode=S_IFREG|0644, st_size=2288, ...}) = 0
14662 fcntl64(5, F_GETFD)               = 0
14662 fcntl64(5, F_SETFD, FD_CLOEXEC)   = 0
14662 read(5,
"javazi\0\1\4\10\240\377\337\332\340\35\300\0!\377\340;"..., 2288) =
2288
14662 close(5)                          = 0

 

Bill Tims

Renaissance Systems, Inc.
5426 Guadalupe, Suite 100
Austin, TX  78751
512-275-0344

 

 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/i18n-dev/attachments/20091203/37110c8a/attachment-0001.html 


More information about the i18n-dev mailing list