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.