Slashdot Mirror


You Can Look Forward To 8 More Years of Leap Second Problems (cio.com)

itwbennett writes: As previously discussed here, the World Radiocommunication Conference (WRC) met "for nearly the entire month of November, and one of the hot-button issues [was] what to do about the leap second." But, as they did at the 2012 conference, the WRC voted to postpone the decision — not just until the next WRC in 2019, but until the one after, in 2023, while the International Telecommunication Union conducts further studies into the impact of tinkering with the definition of Coordinated Universal Time.

29 of 143 comments (clear)

  1. How is it a problem? by Anonymous Coward · · Score: 4, Insightful

    NTP handles leap seconds, where's the issue?

    1. Re:How is it a problem? by msauve · · Score: 3, Interesting

      Actually, it doesn't. ntpd, the canonical implementation, doesn't follow the RFC for NTP. Other implementations do the same thing, simply because they're expected to be compatible with it. It does special handling for leap seconds (beyond simply advertising when they occur, so the OS can handle them properly). NTP isn't supposed to do anything with leap seconds, it's supposed to simply count seconds in an epoch. RFC 5905 says it's supposed to count seconds with a "monotonically increasing" UTC timescale.

      ntpd doesn't do that - when there's a leap second it counts backwards (or stops counting for a second, depending on how you think of it) in violation of the RFC, and then simply forgets about the leap second. It has the same fundamental flaw as POSIX.

      --
      "National Security is the chief cause of national insecurity." - Celine's First Law
    2. Re:How is it a problem? by ceoyoyo · · Score: 2

      Heaven forbid developers actually test edge cases....

      Another solution would be to use TAI if you really can't be bothered to deal with an occasional leap second. The whole point of UTC is to have a time standard that's based on TAI but is numerically close to UT.

      I don't understand why this is suddenly a problem. Perhaps because of all the bootcamp developers writing code now?

    3. Re:How is it a problem? by davester666 · · Score: 2

      I'm not particularly coordinated, and I leapt at the wrong time. So now all my clocks are off and there is nothing I can do about it until next year. I've started training to do better.

      --
      Sleep your way to a whiter smile...date a dentist!
    4. Re:How is it a problem? by msauve · · Score: 2

      "So why assume 0-59?"

      Because, POSIX.

      The committee which created POSIX (has any "design by committee" ever gotten things right?) decided to create an impossible situation - they both define a timescale of seconds in an epoch, AND define a day to be exclusively 86400 seconds. The only way that's possible is if a POSIX system doesn't claim to maintain UTC. Most/all do.

      Here's a good explanation, with the gory details.

      N.B. Leap seconds existed before POSIX, so they had the opportunity to get it right. They didn't. Leap seconds don't cause problems. POSIX does.

      --
      "National Security is the chief cause of national insecurity." - Celine's First Law
    5. Re:How is it a problem? by camperdave · · Score: 3, Interesting

      I may be mis-remembering, but it seems like a summer or 2 ago, there was a day with 2 leap seconds in it.

      Not possible. The leap second committee folks have a mandate never to let the difference between the UTC and UT1 (mean solar time) readings exceed 0.9 seconds. They usually decide to apply a leap second whenever the difference between UTC and UT1 approaches 0.6 seconds. Furthermore, they can add a leap second at the end of any month, although there is a preference for June and December and a second preference for March and September. For there to be two leap seconds in a day, something catastrophic would have had to have happened, like California sliding into the ocean, the Yosemite supervolcano blowing, or the Maple Leafs winning the Stanley Cup.

      --
      When our name is on the back of your car, we're behind you all the way!
  2. Someone needs to ... by PPH · · Score: 4, Funny

    ... wind up the earth.

    --
    Have gnu, will travel.
  3. This is stupid ... by gstoddart · · Score: 4, Insightful

    Leap seconds are an artifact of our timekeeping system, and actual physical properties of our orbit.

    For the ITU to be voting on if we keep leap seconds is kind of like politicians voting to determine that pi==3 ... it has nothing to do with reality.

    Like it or not, you have to solve the problem. You simply can't get a bunch of tech people on a damned committee getting together and saying "we're no longer having leap seconds". That's just stupid.

    --
    Lost at C:>. Found at C.
    1. Re:This is stupid ... by gstoddart · · Score: 4, Interesting

      See, the problem is most people don't understand where our system of time keeping comes from or why it's important.

      The reason we adjust for leap years and leap seconds is our calendar is a close approximation to our orbital period ... but it's not exact.

      At noon, on the day of a solstice or an equinox, the sun is in a known position in the sky. We use it for important things like navigation and timekeeping, and knowing when the hell things like eclipses, sun flares, high tides, and comets might happen ... or that asteroid which might kill us.

      It's a real physical property, which we kind of need to keep track of. It's NOT some thing you can say "oh, well, what does it matter if you're off by a couple of days?".

      --
      Lost at C:>. Found at C.
    2. Re:This is stupid ... by TheRaven64 · · Score: 2

      If we don't bother with leap seconds, then the distance that the sun will be off from being directly overhead at the equinox is about the same as it is now from being a couple of hundred miles away from the meridian. A simpler solution to the problem would be to, every couple of thousand years, have a one-hour reset. There is basically nothing that depends on the position of the sun in the sky to that level of accuracy, but there are a huge number of things (including all air-traffic control systems) that depend on keeping time in sync to sub-second accuracy and are safety critical. These things all need some special handling for every adjustment and an extra hour would be no more difficult for them than an extra second, so doing one big correction every couple of thousand years would be far, far cheaper. That's of course assuming that we still care much for a time system that's predicated on a single planet's relationship to its star in 2,000 years. It seems likely that we'll either be sufficiently disbursed that we don't, or that we'll have damaged our civilisation enough that we will have far bigger problems to deal with.

      --
      I am TheRaven on Soylent News
    3. Re:This is stupid ... by TheRaven64 · · Score: 2

      You do understand that the navigation is ALSO intrinsically tied to the astronomical positioning of things, right?

      Today? Mostly (for anything where accuracy matters to the degree that leap seconds will make a difference in under a few hundred years) it depends on the GPS position, or some equivalent. GPS time, unlike UTC, does not have leap seconds.

      --
      I am TheRaven on Soylent News
    4. Re:This is stupid ... by PRMan · · Score: 2

      There have been only 25 leap seconds since 1972 (43 years). Why don't we just add 1-3 seconds on leap day instead? Time's already screwed up that day anyway.

      --
      Peter predicted that you would "deliberately forget" creation 2000 years ago...
    5. Re:This is stupid ... by Anonymous Coward · · Score: 5, Interesting

      We use it for important things like navigation and timekeeping, and knowing when the hell things like eclipses, sun flares, high tides, and comets might happen ... or that asteroid which might kill us.

      I'm a professional astronomer, who occasionally needs to time things to sub-second precision over multiple years - and the leap second is, to me, nothing but a pain in the arse. Let's run down your list:

        * "navigation" - No one navigates by the sun and stars any more - at least, certainly no one who needs sub-second precision.

        * "timekeeping" - Atomic clocks keep time irrespective of the sun.

        * "eclipses" - Eclipses don't care whether the sun's at the meridian or not: they only care about the relative position of the sun and the moon, which you can calculate perfectly easily with an arbitrary time standard.

        * "sun flares" - Solar flares don't care whether the sun's at the meridian or not.

        * "high tides" - The sun makes a small contribution to the tides (which are dominated by the moon), so the leap second *does* help you keep track of this contribution - but who the hell needs to know the high tide to the nearest second?

        * "comets" - Comets don't care if the sun is at the meridian or not.

        * "that asteroid which might kill us" - That asteroid doesn't care if the sun is at the meridian or not - but there *is* a chance that someone might miscalculate its orbit and not realise that it's going to kill us, because there was a bug in their code dealing with leap seconds.

      So, this is something that genuinely puzzles me: who actually *wants* leap seconds? You seem to think that I should want them, but I certainly don't.

    6. Re:This is stupid ... by Kjella · · Score: 2

      At noon, on the day of a solstice or an equinox, the sun is in a known position in the sky. We use it for important things like navigation and timekeeping, and knowing when the hell things like eclipses, sun flares, high tides, and comets might happen ... or that asteroid which might kill us. It's a real physical property, which we kind of need to keep track of. It's NOT some thing you can say "oh, well, what does it matter if you're off by a couple of days?".

      But we're not talking about days. There's been 26 leap seconds in 43 years, we're talking about a drift of roughly one minute per century. For most things being off by a minute or two wouldn't matter and if you know 12:01 = 12:00 a hundred years ago it might be easier to correct for that. While leap seconds keeps us in sync with reality, it means that if you want to do something every X seconds you can't just rely on UTC and NTP because at some point it'll actually go X+1 seconds. And leap seconds take world-wide coordination because you have to know every six month whether to adjust the clock or not, it can't be put into an algorithm. Calculating the appearance of comets would actually be easier because they have a fixed period, whether the earth slows down or not.

      The only question is if we want a ton of small "discontinuities" in time, or if it's less stress to do set a much larger drift limit and pull a "y2k" for example once every 400 years where you add a "February 30th" that lasts exactly so long as you need it to last. And between those the day is 84600.00000000 seconds long, no matter what the big yellow orb outside says. We could instead publish drift numbers if you want solar noon, even every day. At this granularity the world is run by clocks, not by the sun.

      --
      Live today, because you never know what tomorrow brings
    7. Re:This is stupid ... by petermgreen · · Score: 4, Informative

      Leap seconds are an artifact of our timekeeping system, and actual physical properties of our orbit.

      The latter we are stuck with but the former is something humanity has the power to change. There are basically three choices.

      1: Disconnect the civil time second from the SI second. Allow the civil time second to vary slightly to match the mean solar day.
      2: Allow civil time to drift relative to solar time
      3: Make periodic adjustments to civil time to keep it close to solar time.

      Each choice hurts different people. Choice 1 hurts anyone who needs to convert between civil time and "atom time". Choice 2 hurts people who rely on civil time as a navigational aid and future historians. Choice 3 puts a rarely excersised special case into computer systems leading to systematic failures.

      --
      note: i'm known as plugwash most places but i screwd up registering that here somehow in the past and now can't register
    8. Re:This is stupid ... by jbengt · · Score: 2

      There is a GPS standard time. I believe it is based on the Geocentric Celestial Reference System. (as opposed to the Barycentric Celestial Reference System that you may need for positioning beyond Earth orbit.)
      Anyway, if you don't like that, you could use the TAI (International Atomic Clock Time) instead.
      Leap seconds can be used for displaying time in UTC if you need to, while those that need a constant, uninterrupted tick of the clock could use TAI (or GPS) in the backend.

    9. Re:This is stupid ... by Xylantiel · · Score: 2

      Better yet, we need to FIX POSIX time not mess up UTC. Leap seconds are currently not representable in posix time.

    10. Re:This is stupid ... by karnal · · Score: 2

      What if the jitter routine has a bug in it? Is it then a jitter bug?

      --
      Karnal
    11. Re:This is stupid ... by ceoyoyo · · Score: 2

      GPS satellites report a time that is a strict offset of TAI, which is the standard that is designed for use by people who don't want leap seconds. GPS positioning depends on the precise position of points on the surface of the Earth underneath the GPS constellation, so although the satellites report a TAI-locked time, to actually determine your position you have to do a correction that's very similar to UTC, except with a granularity that's more like leap nanoseconds instead of seconds.

    12. Re:This is stupid ... by knorthern+knight · · Score: 2

      A second used to be 1/86,400 of a mean solar day (e.g. high noon to high noon). A slowing day would mean a lengthening second, which would screw up measurements of basic physical constants, e.g. the speed of light.

      The current definition of a second is http://physics.nist.gov/cuu/Un...

      > The second is the duration of 9 192 631 770 periods of the
      > radiation corresponding to the transition between the two
      > hyperfine levels of the ground state of the cesium 133 atom.

      In theory, any sufficiently advanced research lab on the planet can duplicate this measurement.

      --

      I'm not repeating myself
      I'm an X window user; I'm an ex-Windows user
    13. Re:This is stupid ... by ceoyoyo · · Score: 2

      Reducing a sight in modern celestial navigation usually involves calculating the expected altitude of a target celestial body at a particular time at a particular place on the surface, noting the actual altitude of the body, then using the difference to determine your distance from the reference location. To do that you need to use a time standard that stays in sync with the heavens, or correct for the drift in one that doesn't. UTC is convenient because it's accurate to about a tenth of a second, as close as you could hope to measure by hand, and doesn't need overly frequent adjustment like UT1.

      An error of one second in reducing a sight translates to a positional error of around a quarter of a nautical mile, or about half a kilometre. As discussed here a while ago, celestial navigation is still an important backup for military and commercial shipping, as well as deep water private sailors who aren't idiots. A kilometre or two one way or another often doesn't matter, but sometimes it does. GPS, of course, also has to make the same corrections, although it uses finer grained ones than UTC does.

      If you're the OP, in regards to your original post, something I don't understand: if you're an astronomer who is noting the timing of astronomical events, why are you using UTC instead of terrestrial time: "a modern astronomical time standard defined by the International Astronomical Union, primarily for time-measurements of astronomical observations made from the surface of Earth?"

  4. first proposed in 2004, not resolved before 2024 by at10u8 · · Score: 2

    The first proposal to abandon leap seconds was presented to the ITU-R in 2004, and subsequent versions have been rejected for over a decade. It is evident that the usual process of ITU-R decisions is not capable of coming to agreement on the subject of leap seconds. It remains to be seen whether they will produce a new framework for studies which can produce an agreement in 8 years.

  5. Good! 8 more years of time working correctly. by dwheeler · · Score: 2

    Good. 8 more years of time working correctly. The fundamental issue is that the Earth just doesn't care what our atomic clocks measure. If programmers want an exact time system without leap seconds, use TAI, that's what it's for. Most people in the world don't care if it's hard to code leap seconds. Instead, most people go outside occasionally, and they expect that 'noon' means approximately 'sun at highest point'. We can switch to some system other than leap seconds, but if we expect 'noon' to have its conventional meaning, then we need to agree on a system that does that.

    --
    - David A. Wheeler (see my Secure Programming HOWTO)
  6. Correction: 8 years minus 2.6 leap seconds by JoeyRox · · Score: 2

    Give or take a second.

  7. Re:Good! 8 more years of time working correctly. by AthanasiusKircher · · Score: 2

    Good. 8 more years of time working correctly. The fundamental issue is that the Earth just doesn't care what our atomic clocks measure. If programmers want an exact time system without leap seconds, use TAI, that's what it's for. Most people in the world don't care if it's hard to code leap seconds. Instead, most people go outside occasionally, and they expect that 'noon' means approximately 'sun at highest point'. We can switch to some system other than leap seconds, but if we expect 'noon' to have its conventional meaning, then we need to agree on a system that does that.

    Except that system is NOT UTC. The system where "noon" means "sun at highest point" is called UT1. UTC is the "smoothed out" version of UT1 that allows an error up to a second.

    Other than astronomers, nobody really cares about UT1. Nobody really cares about the 1-second error in UTC either when it comes to "noon." Heck, most countries shift where the sun is at noon twice each year to observe "daylight savings."

    The question is whether there is any practical benefit to keeping UTC within 1 second of UT1. People who really need UT1 already use it. People who don't generally don't care about that sort of precision for when the sun hits its zenith.

    SO -- what would happen if we just got rid of leap seconds for the moment and allowed UTC to drift for a while? We'd likely accumulate a few minutes of error over the next several centuries. Maybe when we get 10 minutes off, somebody might actually care that the sun isn't lining up, but that wouldn't happen for hundreds of years.

    And, you might say -- "BUT, BUT... we can't let that happen, because what about our systems in the year 2500 which will be running legacy code and will suddenly need to insert leap MINUTES! DISASTER!"

    No -- there would be disaster anyway. Because the earth is gradually slowing down, we'll begin to need more and more leap seconds as the centuries go by. By the time we get to the point that the collective error in UTC is enough for the average person to care where "noon" is, we'll already be to the point when two leap seconds per year probably won't be enough to keep us "on track," so we'll have to redesign the "leap second" system anyway as it's currently implemented.

    Thus, there's absolutely no good reason for leap seconds (at least in the current system). If you really care where the sun is, use UT1. If not, by the time the collective error builds up enough for anyone to care, it will be time to overhaul the time system anyway.

  8. Re:How about fixing the systems? by laie_techie · · Score: 2

    Leap days (which we call leap years, because consistency is hard) are predictable. Software written 40 years ago will have the extra days at exactly the same times and with exactly the same frequency that the designers thought that they would. You never have problems where some parts of a distributed system got the update and others didn't. Either the code is working, or it's broken. It's also really easy to test.

    Actually, I wonder how much software written 40 years ago correctly calculates leap years. Every year divisible by 4 is a leap year, except for those divisible by 100, except those divisible by 400. How much software will consider the year 2100 a leap year because the algorithm was dumbed down to every four years?

  9. Don't Use UTC by Greyfox · · Score: 2, Interesting

    So just don't use UTC. The POSIX group only said "UTC" instead of "GMT" because they didn't know they difference and they thought saying "UTC" made them sound cooler. A lot of companies put it in their specs for the same reason. They're all like "Ooo we're all technical because we're using UTC!" Then you ask them if they're really using UTC or GMT and they ask you what the difference is. The only people it really matters for is NASA, and they convert from a well known time system to another well known time system as they need to. Most programmers just need to know the number of seconds since Midnight, Jan 1, 1970, GMT, as God intended.

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    1. Re:Don't Use UTC by subreality · · Score: 2

      Are you sure YOU know the difference between UTC and GMT?

      It's not that UTC sounds cooler... It's what we actually use. UTC ticks based on atomic clocks and it's what's distributed through NTP. GMT (really UT) tracks Earth's rotation, doesn't have a stable second, and there are no high-precision realtime references.

      Most programmers just need to know the number of seconds since Midnight, Jan 1, 1970, GMT, as God intended.

      time_t doesn't count the number of absolute SI seconds since the Epoch: it assumes days are always 86400.0 seconds long, and completely ignores leap seconds... even worse, before 1972 they used sub-second leaps, so the offset isn't even an integer.

      So, all told, why not refer to it as UTC since that's actually correct?

  10. I wish they'd ditch daylight savings time. by Ungrounded+Lightning · · Score: 2

    Do you have any IDEA what a mess Daylight Savings Time makes of things like programs for process control and scheduling - and has at least since I did software for it back in the late '70s

    Heck: For far longer than that. I hear the railroads handle it like this:
      - In the spring, suddenly all the trains are an hour late. They work their way back to being on-time as they normally would - by running as fast as is practical.
      - In the fall they STOP FOR AN HOUR. They just sit there with their engines running...
    It's just easier than trying to figure out something "better" to do about it.

    The claims that it saves energy are currently backward and getting more so. They may always have been, or it may be because lighting is more efficient (so the savings is small) while air conditioners are far more prevalent (and run more if people get home earlier).

    Meanwhile it increases death rates: From DST-lagged drivers just after a change, from kids getting hit going to school in the dark on more days, from stress-related diseases exacerbated by the stress of the time change.

    It also was a big factor in killing drive-in theatres.

    If the government MUST twiddle with the clocks seasonally they should set them the OTHER WAY, creating Night Life Savings Time. We ALREADY have a shortage of dark time for evening recreation in the summer. Why take another hour away by shifting the clocks? Add one instead.

    --
    Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way