Microsoft has shed some light on the upcoming Japanese Calendar problem on Windows 10 devices. The issue which was initially known as Y2K happened to computer systems in 2000. The issue was that computer programs were written in such a way that only the last 2 digits of the year should change. It worked perfectly until 1999 but in 2000 all 4 digits of the calendar were to be changed which caused the Y2K problem or the Millennium bug. This led to computers reporting the wrong dates or rolling back to 1900.
The bug resulted in issues in almost every country that relied on computers back then. However, this wasn’t the first time when a bug in date and calendar settings caused panic and definitely, it wasn’t the last. There have been many similar cases since then like when iPhones crashed on a particular date. It looks like a similar bug will cause issues next year for those who use Japanese Calendar. Microsoft explained the issue in the latest blog post and has given tips on how developers can test their apps on the new Japanese Era.
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.
Microsoft has also confirmed that there is a placeholder in the latest Windows 10 update which will be updated once Japan announces the new Emperor.
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.
Microsoft also shed light on why this is important and gave the example of the Y2K bug which caused a worldwide panic on Jan 1, 2000.
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.
Microsoft has shared a registry edit for app developers and users to test their apps under the new Era and update them before the actual change happens next year.
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.
Apart from that, Microsoft has also listed out few things to watch for as the Japanese Calendar moves into a new era. The company will be working on updating Windows 10 accordingly and has asked developers to keep an eye out as well. The new Era change is a rare event and no one knows how it will impact the computers and programs across the world.
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.
If you’re an app developer then you can follow the steps shared by Microsoft in the new environment. Also, make sure to send out updates before the Era change to prevent compatibility issues or other problems.