Re: Bug: Status/Summary of slashdot leap-second crash on new years 2008-2009

David Newall
2009-01-04T08:41:33Z

Chris Adams wrote:
> The leap second isn't a simple thing like a time zone. Zones account
> for an offset from UTC
Time zones are described that way, but I was wondering why not use
zoneinfo, which describes the local time after an arbitrary number of
seconds since the epoch. The leap second is a textbook case for
updating zoneinfo.

> , but a leap second is an extra second inserted
> into (or possibly removed from) UTC itself. There was actually a 61
> second minute on Dec. 31.

> The trouble comes in keeping the "seconds
> since the epoch" counter sane, meaning (seconds % 86400) == 0 at
> 00:00:00 UTC.

That sounds like an irrelevant quality, and as we've seen, striving for
it has caused difficulties. Worse, we've now got the situation where the
number of seconds between midnight starting December 31 and midnight
starting January 1 is incorrect. The correct value is 86401, because
that's how many seconds there were.

> Since there were 86401 seconds Dec. 31, the kernel had to
> tick the last second twice to keep correct UTC time.

It didn't have to, but apparently, and regrettably, that's what was
done; leaving an even bigger problem. How many seconds does the
computer claim were in 2008? Probably not enough.