JDK-8229818 : Add workaround to TZUpdater for converting tzdata files from vanguard to rearguard (JDK 7u only)
  • Type: Bug
  • Component: tools
  • Sub-Component: updaters
  • Affected Version: 2.2.0
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2019-08-16
  • Updated: 2020-06-16
  • Resolved: 2019-09-24
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
tz2.3.0 b01Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Relates :  
Sub Tasks
JDK-8247586 :  
Currently TZUpdater doesn't support vanguard format tzdata which the tool directly consumes from IANA site: https://www.iana.org/time-zones/repository/tzdata-latest.tar.gz
This is because of the negative DST save value and Japan zone rule where hour is expressed in 25:00 format, which are not compatible with the current version of the tool.

Please refer to https://bugs.openjdk.java.net/browse/JDK-8212970
for more information and to see the fix made into JDK for this issue.
The similar fix needs to be made into the TZUpdater tool as well.

Since the tool is used by many users and customers, we are planning a temporary fix to the tool, which will convert the non-compatible vanguard tzdata into compatible rearguard tzdata before it is processed by the tool.
This is similar to what the IANA script does here: https://github.com/eggert/tz/blob/master/ziguard.awk
While updating jdk7u tzdata, if the tzupdater tools fail for some reason, there is a new property provided to run the tool to force update using vanguard bundle(fallback option). We only advise the use of this new property if the tzupdater tools is failing to run. The new property can be enabled either by defining or setting it like "-Dtzupdater.forceUseOfVanguard" or "-Dtzupdater.forceUseOfVanguard=true" respectively.

Fix version is 2.3.0