Partager via


The Japanese Calendar's Y2K Moment

Japanese Calendar Eras

The Windows 10 Spring Release includes a placeholder for the era expected to begin on 1 May, 2019.  That information is in a registry key that can be removed or edited in the event that a system's software misbehaves with this additional information.

The Japanese Calendar has Japanese Era Names that coincide with the reign of the Emperor.  For most of the modern age of computing that has been the Heisei era, however the Emperor is expected to step down on April 30, 2019.  Which will bring about the beginning of a new era.  Fortunately, this is a rare event, however it means that most software has not been tested to ensure that it will behave with an additional era.

The magnitude of this event on computing systems using the Japanese Calendar may be similar to the Y2K event with the Gregorian Calendar.  For the Y2K event, there was world-wide recognition of the upcoming change, resulting in governments and software vendors beginning to work on solutions for that problem several years before 1 Jan 2000.  Even with that preparation many organizations encountered problems due to the millennial transition.

After the era has changed it will be too late to test for compatibility problems.  Therefore, the Windows 10 Spring Release includes a registry entry with placeholder information for the expected Era transition.  This is intended to help users discover any software limitations around the expected change to the new era.  Users are encouraged to ensure that their applications are well behaved before the actual era change.

In the event that applications don't work as expected with the additional era, the registry value may be modified or removed as needed.  Should problems be encountered, users are encouraged to contact their software provider(s) or otherwise investigate possible solutions.  Next year we expect and official announcement of the new era and name, however well before May 2019 it will be too late to begin testing for computing issues.

The registry value that controls this behavior may be modified by and administrator using regedit or other tools.  It is located at Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\Calendars\Japanese\Eras within the registry.  In that key there are 5 string values for the eras Windows knows about.  The last value "2019 05 01" contains the temporary information "??_?_??????_?"  That "2019 05 01" value may be removed or modified if need be to work around any software limitations.  In the event that removal is required, we recommend that the problem not be ignored as the user will probably want the new era to be usable when the final announcement is made in 2019.

When the final name is announced by the government, and update will be provided to replace the placeholder test strings with the official era name.

Things to Watch For

There are several interesting conditions that an additional era provides and current software may not expect.

  • Calendar controls may presume there is only one "current" era, and disallow navigation to a later or previous era.  This is likely to pose complications around the transition date.
  • Applications may have stored future dates in the previous era expecting those to be parsed later.  Should those dates represent times in the new era, use of the previous Era and year number may confuse parsing algorithms.  An example would be a date in year 40 of the old era that is may be expected to be written using year 10 of the new era instead.
  • Future dates written using a new era name and year numbering mechanism may be difficult to compare with the same date written using the previous era name and larger year number.  For example, year 32 of the old era may be the same date as year 2 of the new era.
  • Calendars may need to describe which Era a date belongs to, particularly if the Era changes between months or within a month.
  • Some algorithms attempting to count the years during a transition year may not consider the possibility of two partial Japanese Calendar years, in two different Calendars Eras, within the same Gregorian year.

Comments

  • Anonymous
    April 17, 2018
    The comment has been removed
    • Anonymous
      August 07, 2018
      Yes, this is the same test era mentioned before.
  • Anonymous
    January 24, 2019
    In the 1980's my company was selling software for Futjisu computers into Japan, and we had to deal with dates within the mainframe environment. Our product was a programming language that generated COBOL, and it had a DATE data type so we had to deal era dates From this experience: -1. Dates were always stored in the standard Japanese form, which is yyyymmdd, e.g. today is 20190125.2. Era dates are a display format, not a storage format. We only needed to record a table of years and names to select the appropriate era. Our Japanese market covered the time of the change from Showa to Heisei. I was puzzled that we didn't need to record an actual date: the Heisei era started on the 1st January of the year in which Hirohito (Showa) died, we didn't need to worry about the actual date of his death. Emperor Hirohito died on the 7th Jan 1989, I was told that it was valid to refer to dates in 1989 as either year ?? Showa or year 1 Heisei. Robert Barnes
  • Anonymous
    February 13, 2019
    EM\CurrentControlSet\Control\Nls\Calendars\Japanese\Eras within the registry. In that key there are 5 string values for the eras Windows knows about. The last value "2019 05 01" contains the temporary information "????????_?" That "2019 05 01" value may be removed or modified if need be to work around any software limitations. In the event that removal is required, we recommend that the problem not be ignored as the user will probably want the new era to be usable when the final announcement is made in 2019.When the final name is announced by the government, and update will be provided to replace the placeholder test strings with the official era name.Things to Watch ForThere are several interesting conditions that an additional era provides and current software may not expect.Calendar controls may presume there is only one "current" era, and disallow navigation to a later or previous era. This is likely to pose complications around the transition date.Applications may have stored future datesagario unblocked