[Bug 1175548] New: timezone-java ships invalid zonefile 'Asia/Beijing'
http://bugzilla.opensuse.org/show_bug.cgi?id=1175548 Bug ID: 1175548 Summary: timezone-java ships invalid zonefile 'Asia/Beijing' Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: Other OS: Other Status: NEW Severity: Minor Priority: P5 - None Component: Java Assignee: java-maintainers@suse.de Reporter: opensuse@zehnvierzig.org QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- Overview: The package 'timezone-java' contains an invalid time zone 'Asia/Beijing'. This zone is not known to IANA or anybody else. Beijing is part of the Chinese Standard Time (CST) and thus in zone 'Asia/Shanghai'. Steps to reproduce: Using OpenJDK from the Main Repository (OSS) and call ZoneId.getAvailableZoneIds() The method returns (among others) 'Asia/Beijing'. Because the TzdbZoneRulesProvider is checking $JAVA_HOME/conf/tz.properties for TZDB data. The property file points to the installed content of the timezone-java package under '/usr/share/javazi'. Impact: The list of zones returned by JDKs ZoneId.getAvailableZoneIds() is not compatible to the very popular joda-time package nor compatible to the tzdb.dat zone data shipped with OpenJDK. Solution: Remove 'Asia/Beijing' from timezone-java package (and from the timezone package as well). Maybe keep it as an alias to 'Asia/Shanghai'? OR Use Oracle's tzupdater Tool/JAR to fetch and deploy latest zone data from IANA. See: * https://data.iana.org/time-zones/ * https://www.oracle.com/java/technologies/javase/tzupdater-readme.html -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175548 http://bugzilla.opensuse.org/show_bug.cgi?id=1175548#c1 --- Comment #1 from Sven Teresniak <opensuse@zehnvierzig.org> --- Debian, Ubuntu, Alpine don't have a timezone package for java and use the tzdb.dat from the JDK/JRE. Fedora installs a timezone package as dependency but without Beijing (and without tz.properties - couldn't find how they managed to *not* use the JDKs tzdb) -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175548 http://bugzilla.opensuse.org/show_bug.cgi?id=1175548#c2 Andreas Stieger <Andreas.Stieger@gmx.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |Andreas.Stieger@gmx.de, | |mmachova@suse.com --- Comment #2 from Andreas Stieger <Andreas.Stieger@gmx.de> --- from openSUSE:Factory/timezone/tzdata-china.diff
+Link Asia/Shanghai Asia/Beijing [...] +CN +3955+11626 Asia/Beijing China Standard Time CN +3114+12128 Asia/Shanghai Beijing Time [...] +CN +3955+11626 Asia/Beijing China Standard Time CN +3114+12128 Asia/Shanghai Beijing Time
-- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175548 http://bugzilla.opensuse.org/show_bug.cgi?id=1175548#c3 Mark�ta Machov� <mmachova@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mmachova@suse.com --- Comment #3 from Mark�ta Machov� <mmachova@suse.com> --- Thanks for the info. What is more, the Beijing zone does not work (maybe due to some recent hacks, I don't know), see boo#1179871. Do we want to fix Beijing and keep it, or will we drop it? IMO it only confuses our users, although I see the point of it, so I would rather drop it. It would be nice if we decided it here to be able to mark the possible future bugs as duplicates of this one. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175548 http://bugzilla.opensuse.org/show_bug.cgi?id=1175548#c4 --- Comment #4 from Mark�ta Machov� <mmachova@suse.com> --- Andreas, could you please voice your opinion and optionally invite some other people, who might be interested? Thanks! -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175548 Mark�ta Machov� <mmachova@suse.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC|disabled_mmachova@suse.com | -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175548 http://bugzilla.opensuse.org/show_bug.cgi?id=1175548#c5 Andreas Stieger <Andreas.Stieger@gmx.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |opensuse@zehnvierzig.org Assignee|java-maintainers@suse.de |i@marguerite.su Flags| |needinfo?(opensuse@zehnvier | |zig.org) --- Comment #5 from Andreas Stieger <Andreas.Stieger@gmx.de> --- This bug is from 2020-08-20. The change to convert "Zone Asia/Beijing" (which is what triggers the bug) to a "Link Asia/Shanghai Asia/Beijing" (which maintains compatibility) is from September that year: https://build.opensuse.org/request/show/837191 So this should be fixed already. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175548 http://bugzilla.opensuse.org/show_bug.cgi?id=1175548#c6 --- Comment #6 from Marguerite Su <i@marguerite.su> --- Hi, the old patch was introduced long ago (back to 2008? may be) I think it was related with SLE, because back in 2008, there's no openSUSE but SUSE Linux. SUSE has office in China and does business. China has Beijing as capital, and people use Beijing Time everywhere (the government and enterprises). No buyers want a system respect Beijing time while display the time as Shanghai? maybe that's the reason. (For new installation, YaST UI can choose Beijing and Shanghai, although they represent a same time) I do the link work because the original patch breaks the systemd timedatectl. that is, timedatectl display a wrong time, 00:00:00 instead of 08:00:00. I think this will not introduce problem any more, because "link" is allowed by timezone upstream. To talk about the removal, I personally don't have to the right to do that. I can help with the fix. but I don't think I can remove it. especially it may involve SUSE company, and I am Chinese myself :-) -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175548 http://bugzilla.opensuse.org/show_bug.cgi?id=1175548#c7 --- Comment #7 from Mark�ta Machov� <mmachova@suse.com> --- Hi, ok, user's opinion is always valuable. Let's fix it. Sven: Does this incompatibility break any services (for instance the mentioned joda-time)? How many of them are in openSUSE? Marguerite: I am also trying to investigate boo#1179871, feel free to join me there. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1175548 http://bugzilla.opensuse.org/show_bug.cgi?id=1175548#c8 --- Comment #8 from Marguerite Su <i@marguerite.su> --- I myself is okay for the removal if I put my developer hat on. Because I know it is not standard. In Linux world, Fedora/Ubuntu/Arch Linux don���t have Asia/Beijing because by default timezone package does not ship it. But, the emotional part of me treats it as an outstanding feature of SUSE/openSUSE I work in Beijing, live in Beijing, just as many other SUSE employees/customers. I think it���s such ���engineering culture��� that make SUSE win the Chinese market :-) So I hesitate about this issue, I know if I can���t fix it I should let it go, but I hope someone could stand and fix it. Technically, this is a combination of bugs for Java language and chromium (downstream users for timezone package) 1. IANA will not take Asia/Beijing in any way because Asia/Shanghai is already Beijing time. 2. But timezone package does ���link��� everywhere to make sure every capital of any country can have a legal timezone name. Eg, North/South Korea and Japan are located in the same timezone (GMT+09:00), but IANA has Asia/Pyongyang, Asia/Seoul and Asia/Tokyo. So Asia/Beijing actually deserves and linking is the right fix at timezone package side But: 3. Java respects timezone package but then it introduces its own tzdb.dat and tzupdater tool :-) 4. Chromium reads timezone too but does a lot self hacks for time later -- You are receiving this mail because: You are on the CC list for the bug.
participants (1)
-
bugzilla_noreply@suse.com