REMINDER: LEAP SECOND

Nick Hilliard nick at foobar.org
Tue Jun 23 10:24:43 UTC 2015


On 23/06/2015 10:25, Mel Beckman wrote:
> Why should your head explode? Possibly you’re overthinking the problem.

The problems don't relate to Harlan overthinking the problem.  They relate
to developers underthinking the problem and assuming that all clocks are
monotonic and that certain rules apply, e.g. that there are 60 seconds in a
minute, 86400 seconds in a day and so forth.

Mostly applications are not time sensitive, but sometimes they are. When
they are, and when the developer assumes something which isn't true,
unexpected things might happen.  assert()s can be triggered, time
synchronisation lost with third party applications, unexpected and untested
code paths could be used, etc.

Blocking NTP at the NTP edge will probably work fine for most situations.
Bear in mind that your NTP edge is not necessarily the same as your network
edge.  E.g. you might have internal GPS / radio sources which could
unexpectedly inject the leap second.  The larger the network, the more
likely this is to happen.  Most organisations have network fossils and ntp
is an excellent source of these.  I.e. systems which work away for years
without any problems before one day accidentally triggering meltdown
because some developer didn't understand the subtleties of clock monotonicity.

Nick




More information about the NANOG mailing list