Originally Posted by
jimjim1
Ah! The old (2^31) - 1 hundredths of a second signed 32 bit integer problem.
I first saw this in about 1997 in production kit that was expected to work for years without a reboot.
In that case the code came from some old Unix(y) stuff that was re-purposed. The thing simply stopped working after 248 days until turned off and on again.
248 days = 2,142,720,000 hundredths of a second
(2^31) -1 = 2,147,483,647
I think there was an unmanned Ariane 5 space rocket carrying four satellites that was lost on launch due to a software integer problem. They used older software from Ariane 4 and it ran out of numbers when Ariane 5's flightpath was different. It's quoted as the most expensive software bug in history.