JDK-8056969 : (tz) Embed tzdata2014g into tzupdater
  • Type: Enhancement
  • Component: tools
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: generic
  • CPU: generic
  • Submitted: 2014-08-31
  • Updated: 2014-09-03
  • Resolved: 2014-09-01
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.
tz1.3.49 b01Fixed
Related Reports
Relates :  
The 2014g release of the tz code and data is available.  It reflects the following changes, which were either circulated on the tz mailing list or are relatively minor technical or administrative changes:

  Changes affecting future time stamps

    Turks & Caicos is switching from US eastern time to UTC-4 year-round,
    modeled as a switch from EST/EDT to AST on 2014-11-02 at 02:00.

  Changes affecting past time stamps

    Time in Russia or the USSR before 1926 or so has been corrected by
    a few seconds in the following zones: Asia/Irkutsk,
    Asia/Krasnoyarsk, Asia/Omsk, Asia/Samarkand, Asia/Tbilisi,
    Asia/Vladivostok, Asia/Yakutsk, Europe/Riga, Europe/Samara.  For
    Asia/Yekaterinburg the correction is a few minutes.  (Thanks to
    Vladimir Karpinsky.)

    The Portuguese decree of 1911-05-26 took effect on 1912-01-01.
    This affects 1911 time stamps in Africa/Bissau, Africa/Luanda,
    Atlantic/Azores, and Atlantic/Madeira.  Also, Lisbon's pre-1912
    GMT offset was -0:36:45 (rounded from -0:36:44.68), not -0:36:32.
    (Thanks to Stephen Colebourne for pointing to the decree.)

    Asia/Dhaka ended DST on 2009-12-31 at 24:00, not 23:59.

    A new file 'backzone' contains data which may appeal to
    connoisseurs of old time stamps, although it is out of scope for
    the tz database, is often poorly sourced, and contains some data
    that is known to be incorrect.  The new file is not recommended
    for ordinary use and its entries are not installed by default.
    (Thanks to Lester Caine for the high-quality Jersey, Guernsey, and
    Isle of Man entries.)

    Some more zones have been turned into links, when they differed
    from existing zones only for older time stamps.  As usual,
    these changes affect UTC offsets in pre-1970 time stamps only.
    Their old contents have been moved to the 'backzone' file.
    The affected zones are: Africa/Bangui, Africa/Brazzaville,
    Africa/Douala, Africa/Kinshasa, Africa/Libreville, Africa/Luanda,
    Africa/Malabo, Africa/Niamey, and Africa/Porto-Novo.

  Changes affecting code

    Unless NETBSD_INSPIRED is defined to 0, the tz library now
    supplies functions for creating and using objects that represent
    time zones. The new functions are tzalloc, tzfree, localtime_rz,
    mktime_z, and (if STD_INSPIRED is also defined) posix2time_z and
    time2posix_z.  They are intended for performance: for example,
    localtime_rz (unlike localtime_r) is trivially thread-safe without
    locking.  (Thanks to Christos Zoulas for proposing NetBSD-inspired
    functions, and to Alan Barrett and Jonathan Lennox for helping to
    debug the change.)

    zdump now builds with the tz library unless USE_LTZ is defined to 0,
    This lets zdump use tz features even if the system library lacks them.
    To build zdump with the system library, use 'make CFLAGS=-DUSE_LTZ=0

    zdump now uses localtime_rz if available, as it's significantly faster,
    and it can help zdump better diagnose invalid time zone names.
    Define HAVE_LOCALTIME_RZ to 0 to suppress this.  HAVE_LOCALTIME_RZ
    defaults to 1 if NETBSD_INSPIRED && USE_LTZ.  When localtime_rz is
    not available, zdump now uses localtime_r and tzset if available,
    as this is a bit cleaner and faster than plain localtime.  Compile
    with -DHAVE_LOCALTIME_R=0 and/or -DHAVE_TZSET=0 if your system
    lacks these two functions.

    If THREAD_SAFE is defined to 1, the tz library is now thread-safe.
    Although not needed for tz's own applications, which are single-threaded,
    this supports POSIX better if the tz library is used in multithreaded apps.

    Some crashes have been fixed when zdump or the tz library is given
    invalid or outlandish input.

    The tz library no longer mishandles leap seconds on platforms with
    unsigned time_t in time zones that lack ordinary transitions after 1970.

    The tz code now attempts to infer TM_GMTOFF and TM_ZONE if not
    already defined, to make it easier to configure on common platforms.
    Define NO_TM_GMTOFF and NO_TM_ZONE to suppress this.

    Unless the new macro UNINIT_TRAP is defined to 1, the tz code now
    assumes that reading uninitialized memory yields garbage values
    but does not cause other problems such as traps.

    If TM_GMTOFF is defined and UNINIT_TRAP is 0, mktime is now
    more likely to guess right for ambiguous time stamps near
    transitions where tm_isdst does not change.

    If HAVE_STRFTIME_L is defined to 1, the tz library now defines
    strftime_l for compatibility with recent versions of POSIX.
    Only the C locale is supported, though.  HAVE_STRFTIME_L defaults
    to 1 on recent POSIX versions, and to 0 otherwise.

    tzselect -c now uses a hybrid distance measure that works better
    in Africa.  (Thanks to Alan Barrett for noting the problem.)

    The C source code now ports to NetBSD when GCC_DEBUG_FLAGS is used,
    or when time_tz is defined.

    When HAVE_UTMPX_H is set the 'date' command now builds on systems
    whose <utmpx.h> file does not define WTMPX_FILE, and when setting
    the date it updates the wtmpx file if _PATH_WTMPX is defined.
    This affects GNU/Linux and similar systems.

    For easier maintenance later, some C code has been simplified,
    some lint has been removed, and the code has been tweaked so that
    plain 'make' is more likely to work.

    The C type 'bool' is now used for boolean values, instead of 'int'.

    The long-obsolete LOCALE_HOME code has been removed.

    The long-obsolete 'gtime' function has been removed.

  Changes affecting build procedure

    'zdump' no longer links in ialloc.o, as it's not needed.

    'make check_time_t_alternatives' no longer assumes GNU diff.

  Changes affecting distribution tarballs

    The files checktab.awk and zoneinfo2tdf.pl are now distributed in
    the tzdata tarball instead of the tzcode tarball, since they help
    maintain the data.  The NEWS and Theory files are now also
    distributed in the tzdata tarball, as they're relevant for data.
    (Thanks to Alan Barrett for pointing this out.)  Also, the
    leapseconds.awk file is no longer distributed in the tzcode
    tarball, since it belongs in the tzdata tarball (where 2014f
    inadvertently also distributed it).

  Changes affecting documentation and commentary

    A new file CONTRIBUTING is distributed.  (Thanks to Tim Parenti for
    suggesting a CONTRIBUTING file, and to Tony Finch and Walter Harms
    for debugging it.)

    The man pages have been updated to use function prototypes,
    to document thread-safe variants like localtime_r, and to document
    the NetBSD-inspired functions tzalloc, tzfree, localtime_rz, and

    The fields in Link lines have been renamed to be more descriptive
    and more like the parameters of 'ln'.  LINK-FROM has become TARGET,
    and LINK-TO has become LINK-NAME.

    tz-link.htm mentions the IETF's tzdist working group; Windows
    Runtime etc. (thanks to Matt Johnson); and HP-UX's tztab.

    Some broken URLs have been fixed in the commentary.  (Thanks to
    Lester Caine.)

    Commentary about Philippines DST has been updated, and commentary
    on pre-1970 time in India has been added.

Here are links to the release files: