[LEAPSECS] The Battle of Flodden Field

Warner Losh imp at bsdimp.com
Fri Jan 7 11:36:58 EST 2011


On 01/07/2011 07:55, Rob Seaman wrote:

> Eliminating leap seconds is an attempt to change the period of the day. But the Sun says otherwise.


No. Eliminating leap seconds keeps the period of the day constant. It
is always 86400 SI seconds long, by definition. On LEAP DAY, the day is
86401 SI seconds long. Eliminating leap seconds eliminates the rough
synchronization between mean solar time and UTC labeling of seconds.
You aren't changing the length of the day, but rather changing the
synchronization to the sun based on the wobble in the rock we live on.

BTW, It does this by adding a second that's labeled in weird way making
UTC a non-uniform radix system. That non-uniformity is poorly
implemented, and often ignored because "it's only a second, why should
that matter" attitude makes it nearly impossible to implement correctly
for those situations that do care. The infrequent nature of leap
seconds also means that they are prone to regression and nobody will
notice for years. I fixed a bug in FreeBSD years ago where the leap
second would occur at effectively a random time of day because the
underlying time keeping system was changed in a way to make it more
efficient. Only this detail was wrong. That change was in 1998, and I
fixed the bug in 2003 when I was doing leap second testing/conformance.
The bug was introduced by somebody who should have known better too, not
just some random kernel hacker making a random change to suit them.

Warner


More information about the LEAPSECS mailing list