Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8238809

Localized time zone name inconsistency between English and other locales

    Details

    • Type: CSR
    • Status: Closed
    • Priority: P3
    • Resolution: Approved
    • Fix Version/s: 15
    • Component/s: core-libs
    • Labels:
      None
    • Subcomponent:
    • Compatibility Kind:
      behavioral
    • Compatibility Risk:
      low
    • Compatibility Risk Description:
      Hide
      Since the logic in CLDR Converter to acquire localized time zone names will change, applications that assume the exact localized names for specific time zone ids may not work, such as parsing the localized name from older JDKs.
      As to the risk of performance degrade by not pre-filling names for English, it turned out it is negligible as the names are cached after the initial call.
      Show
      Since the logic in CLDR Converter to acquire localized time zone names will change, applications that assume the exact localized names for specific time zone ids may not work, such as parsing the localized name from older JDKs. As to the risk of performance degrade by not pre-filling names for English, it turned out it is negligible as the names are cached after the initial call.
    • Scope:
      Implementation

      Description

      Summary

      Remove inconsistent translations of CLDR time zone names between locales.

      Problem

      CLDR may not provide the whole set (std/dst/long/short/generic) of translated names per a time zone id. For example, "Pacific/Honolulu" zone only provides SHORT names, such as "HST"/"HDT" assuming its meta zone ("Hawaii_Aleutian") contains its LONG style names. In such a case, current CLDR Converter substitutes the names from COMPAT provider, which is known to contain the whole set of names per a time zone id. However, this substitution is done only for English locale for performance reason, and other locales follow the per-name fallback (which is correct), thus there are some discrepancies between English names and other translated names.

      Solution

      Change the CLDR Converter for the following points:

      • Stop pre-substitute the missing time zone names from COMPAT provider for English locale so that the names fallback are consistent among locales.
      • Stop returning English names for Locale.ROOT. For example, SHORT names may return GMT offset format (GMT+XX:XX), rather than abbreviated names.
      • Stop importing display names for the old 3-letter-ids from COMPAT except for some common ones for compatibility.

      This change does not intend to modify the availability of time zone ids, only affects the formatted display names for those ids.

      Specification

      N/A. This change is all behavioral.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                naoto Naoto Sato
                Reporter:
                itakiguchi Ichiroh Takiguchi
                Reviewed By:
                Roger Riggs
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: