leap seconds

In Risks 24.80 David E. Ross wrote:

The elimination of leap-seconds is being promoted by those who are too lazy or too incompetent to code time conversions correctly. This situation arose because the long-term slowing of the earth's rotation (which creates the need for leap-seconds) failed to occur for several years, eliminating the need for leap-seconds for 7 years. Previously, a leap-second had been required every year or two.

From 1 January 1961 until 1 January 1972, UTC seconds varied in length relative to TAI seconds, leap-seconds were fractions of a second, and UTC clocks thus did not tick on the same instant as TAI clocks. I was a software test engineer on a project that handled this correctly.

UTC was redefined starting 1 January 1972 to have a second exactly the same as the TAI second, to have leap-seconds exactly whole seconds, and thus UTC clocks thereafter indeed did tick on the exact same instant as TAI clocks. The old software did not need revision; it still handled this correctly.

This was for a large software system for the command and control of military space satellites. Internal time was kept in TAI minutes from some base time because the mathematics required all minutes to be uniform in duration. External time, however, was reported in UTC (day, month, year, hour, minute, and seconds -- to the nearest millisecond). UTC was also used as an intermediate step to getting actual solar time (not mean solar time) for determining the orientation of the surface of the earth relative to a fixed coordinate system based on the stars.

When the software system was replaced in the mid-1980s, the developer (who had not worked on the previous system) did not really understand the difference between UTC and TAI. I repeatedly -- and unsuccessfully -- warned both the developer and the US Air Force (the customer) that there would be problems for not doing time conversions correctly. In the end, the Air Force was required to suspend mission operations a minute before a leap-second and resume operations a minute after. This suspension was considered to be a cost-effective response to the lack of proper design because correcting the design would impact both software and hardware with a cost of several millions of dollars (partially a consequence of poor modularization of the software). A capability that existed in 1970 no longer existed in 1992.

Rob Seaman wrote:

The first leap hour is estimated to occur in about 600 years. They accelerate quadratically after that - remember, we have leap seconds due to the tidal slowing that has already occurred. Future slowing will make leap seconds occur more frequently. There have been the equivalent of about 4 leap hours since Aristotle's time.


Tags: , ,

sa-update on OSX

Dear Lazyweb, how do I run "sa-update" on OSX?

I have SpamAssassin installed via "port install p5-mail-spamassassin". The only SA files appear to be in /opt/local/share/spamassassin/*.cf. The man page for sa-update says there should be a directory /opt/local/var/spamassassin/3.002000/ but nothing like that exists. How does this stuff work?

Tags: , , ,