Details
Backports
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8084228 | emb-9 | Aleksej Efimov | P2 | Resolved | Fixed | team |
Description
The following error was observed during compilation of tzdb.dat with latest JDK9 source:
Failed: java.time.zone.ZoneRulesException: Unknown time-zone ID: Africa/Asmera
java.time.zone.ZoneRulesException: Unknown time-zone ID: Africa/Asmera
at build.tools.tzdb.TzdbZoneRulesProvider.getZoneRules(TzdbZoneRulesProvider.java:98)
at build.tools.tzdb.TzdbZoneRulesCompiler.compile(TzdbZoneRulesCompiler.java:194)
at build.tools.tzdb.TzdbZoneRulesCompiler.main(TzdbZoneRulesCompiler.java:89)
The issue was observed during latest tzdata2014j integration (JDK-8064560).
The issue is cause by the following timezone linking behavior:
There is a Zone with name 'Africa/Nairobi' (defined in 'africa' tzdata file).
The zone link with name 'Africa/Asmara' is defined in the same 'africa' file. This link refers to 'Africa/Nairobi'.
And there is another link with name 'Africa/Asmera' defined in 'backward' tz file. It is linked to 'Africa/Asmara'.
It means that 'Africa/Asmera' linked to 'Africa/Nairobi' through another link (double link chain).
It seems that the current implementation of Tzdb compiler supports only direct links (link to the zone, but not to another link).
Failed: java.time.zone.ZoneRulesException: Unknown time-zone ID: Africa/Asmera
java.time.zone.ZoneRulesException: Unknown time-zone ID: Africa/Asmera
at build.tools.tzdb.TzdbZoneRulesProvider.getZoneRules(TzdbZoneRulesProvider.java:98)
at build.tools.tzdb.TzdbZoneRulesCompiler.compile(TzdbZoneRulesCompiler.java:194)
at build.tools.tzdb.TzdbZoneRulesCompiler.main(TzdbZoneRulesCompiler.java:89)
The issue was observed during latest tzdata2014j integration (
The issue is cause by the following timezone linking behavior:
There is a Zone with name 'Africa/Nairobi' (defined in 'africa' tzdata file).
The zone link with name 'Africa/Asmara' is defined in the same 'africa' file. This link refers to 'Africa/Nairobi'.
And there is another link with name 'Africa/Asmera' defined in 'backward' tz file. It is linked to 'Africa/Asmara'.
It means that 'Africa/Asmera' linked to 'Africa/Nairobi' through another link (double link chain).
It seems that the current implementation of Tzdb compiler supports only direct links (link to the zone, but not to another link).
Attachments
Issue Links
- backported by
-
JDK-8084228 tzdb.dat compilation failure when using tzdata2014j
-
- Resolved
-
- relates to
-
JDK-8064560 (tz) Support tzdata2014j
-
- Closed
-