*** Welcome to piglix ***

Time formatting and storage bugs


In computer science, time formatting and storage bugs are a class of software bugs which may cause time and date calculation or display to be improperly handled. These are most commonly manifestations of arithmetic overflow, but can also be the result of other issues. The most well-known consequence of bugs of this type is the Y2K problem, but many other milestone dates or times exist that have caused or will cause problems depending on various programming deficiencies.

During the 1960s, some computer programs were written using just a single digit for the year, so that 0–9 represented the years 1960–1969. It was especially easy to write programs in the COBOL language with this limitation. The problem was identified and corrected before 1970. No problems due to this problem are known to have occurred. The fix generally was to expand the year to just two digits, owing to limitations of the storage media common in that era, tab cards and magnetic tape.

On 4 January, the 12-bit field that had been used for dates in the Decsystem 10 operating systems overflowed. There were numerous problems and crashes related to this bug while an alternative format was developed.

The Domain/OS clock, which is based on the number of 4 microsecond units that has occurred since 1 January 1980, rolled past 47 bits on 2 November 1997, rendering unpatched systems unusable.

In the last few months before the year 2000, two other date-related milestones occurred that received less publicity than the then-impending Y2K problem.

In many programs or data sets, "9/9/99" was used as a rogue value to indicate either an unresolved date or as a terminator to indicate no further data was in the set. This raised issues upon the arrival of the actual date this represents, 9 September 1999.

The other problem was related to GPS devices: GPS dates are expressed as a week number and a day-of-week number, with the week number transmitted as a ten-bit value. This means that every 1024 weeks (about 19.6 years) after Sunday 6 January 1980 (the GPS epoch), the date resets again to that date; this happened for the first time on Sunday 22 August 1999 and will happen again on 7 April 2019 and 21 November 2038. To address this concern, modernized GPS navigation messages use a 13-bit field, which only repeats every 8,192 weeks (157 years), and will not return to zero until near the year 2137.


...
Wikipedia

...