Leap Second Coming In June, 2012 142
Zoxed writes "IERS have just announced a leap second due at midnight, June 30th this year. Are your systems ready?" The last leap second added was at the end of 2008.
Your own mileage may vary.
Mayans (Score:5, Funny)
The *LAST* leap second occured in 2012
white men (Score:2)
will be screwed
Re: (Score:2)
will be screwed
...because they're the ones who believe all the "2012 is the end of the world" crap. I suspect most folks of Mayan ancestry either don't know about the 2012 hype and don't care, don't know about the Long Count rollover and don't care, or do know about it and understand it's just some part of the calendar rolling over, not some end-of-the-world crap [nasa.gov].
Re: (Score:2)
It's a joke. "leap" second - white men can't jump. get it?
Re: (Score:2)
The end of the world timer now might be perpetually stuck at 00:01. It might throw the prediction off completely. And this only because we decided to push our clocks back by one second.
Re: (Score:2)
I thought the timer was perpetually stuck at 5:02 PM on the 22 April, 2011?
Short Notice (Score:4, Funny)
Re: (Score:3)
I demand at least 3x10^8 seconds advance warning.
FTFY
Re: (Score:3)
Killjoy.
3^10x8 = 472392 seconds or about 5.5 days.
Re: (Score:2)
Sorry, it just didn't look right...
I suppose for fear of getting labelled OCD or something, he is getting slightly more than 5.5 days warning, the leap second isn't for some months.
3x10^8 seconds on the other hand is about nine and a half years, so that's a bit more advance notice.
Re: (Score:2)
I demand at least 3x10^8+1 seconds advance warning.
FTFY
FTFY.
Re: (Score:2)
I won't care (Score:4, Informative)
I use NTP [wikipedia.org] on my systems!
They fix the timers, I got mine fixed. Automagically!
Re: (Score:2)
Re: (Score:3)
I have yet to find a watch that doesnt drift a couple of seconds every year anyways
So i am in the habit of simply resetting everything when i adjust for DST.
I know this because i set one watch to GPS time and find it loses or gains a second every month. This has proven true countless times over the decade with hundreds of watches.
Re: (Score:2)
Casio Waveceptor FTW!
http://amzn.com/B00134L9B6/ [amzn.com]
Re:I won't care (Score:4, Funny)
I have yet to find a watch that doesnt drift a couple of seconds every year anyways
SLOW DOWN!
Re: (Score:3)
Re: (Score:2)
But not all GPS receivers support it as it is an optional part of the NMEA output spec or whatever binary protocol they use. As such there are plenty of devices out there with a hard coded or user settable GPS/UTC offset. That was one of the reasons why people wanted to do away with leap seconds.
Re: (Score:2)
The $GPRMC sentence is required by NMEA-0183 to report UTC.
What brand module did you find that did not do this? I'd like to be sure to avoid it...
Re: (Score:2)
The $GPRMC sentence is required by NMEA-0183 to report UTC.
NMEA is not "the GPS protocol." It is a protocol for transmitting all kinds of data from all kinds of devices. Depth finders, LORAN, GPS, etc.
The GPS protocol defines what internal GPS data transmission, and that protocol uses GPS time but has information about the GPS to UTC offset.
What brand module did you find that did not do this? I'd like to be sure to avoid it...
I believe that the Trimble Acutime GPS receiver provides raw GPS time in its data output until the offset is known, at which time it switches to UTC. This is the GPS I have for my NTP server, and I recall there being an odd 1
Re: (Score:2)
By "the GPS protocol" I meant what is sent OTA from the satellites, which does indeed include UTC correction. In other words, there is no excuse for a GPS module to not provide a means of giving UTC. And any GPS that produces NMEA-0183 output has no choice but give corrected UTC time.
The binary SiRF protocol also provides UTC.
And yes the time will be off until you get a fix, but of course you're not supposed to use the timing data until the unit does have a lock.
Re: (Score:2)
Ah, sounds like you've been working with lower level stuff then. Any consumer GPS module these days consists of a module smaller than one square cm with serial output that you simply have to parse (plus stuff like a 1 pulse-per-second output pin).
NMEA-0183 is the ASCII protocol used by most marine equipment. GPSes also have a binary protocol which is quite a bit richer. Anyway, among other things they barf out your lat/lon and the date/time in UTC once per second.
Re:I won't care (Score:5, Funny)
I found one here: Mechanical Watch NTP Client [wikipedia.org]
Re:I won't care (Score:5, Informative)
Re: (Score:3)
> Not just NTP; the reference implementation.
Or Chrony.
OpenNTPD (Score:5, Informative)
OpenNTPD just ignored the leap second
OpenNTPD has clearly been written by someone who doesn't understand NTP. For example, it advertises incorrect root delay and disperson [debian.org] values, which can cause clients to fail to achieve a majority vote, or to pick the wrong peer to synchronise against. (Earlier versions were even worse, they advertised themselves as being at stratum 0, which could cause synchronisation loops; this has thankfully been fixed, but it doesn't inspire much confidence in the authors' competence.)
I've also found OpenNTP to fail to regulate the local clock on dodgy hardware (it would oscillate wildly, with an amplitude of 3 seconds or so), in situations where the reference ntpd coped just fine.
Folks, do yourself and everyone a favour -- run the reference NTP [ntp.org], run chrony [tuxfamily.org], heck, run some SNTP client [icarus.com], but please avoid OpenNTPD.
Re:OpenNTPD (Score:4, Informative)
I have written most of OpenNTPD. Besides a lot of other stuff.
And to be honest, I am sick and tired of wasting energy on each and every unfounded accusation someone posts somewhere. So I won't go into detail.
First of, portable or native OpenNTPD (native = the one that comes with OpenBSD)? That is a drastic difference, not just because the portable is ancient (if anyone cares, please maintain the portable, I'll happily put it up. And not just promises, I got a lot of them).
Then, looking at ntpd alone doesn't cut it. OpenNTPD uses a different approach than most (all?) others, it leaves the timekeeping to the kernel where it belongs. And we adjusted the kernel subsystem for it on OpenBSD.
and just one thing i want to pick out of the unfounded accusations:
"I've also found OpenNTP to fail to regulate the local clock on dodgy hardware"
that isn't OpenNTPD failing, that is your system's adjtime(2) failing.
And now excuse me please, I prefer to spend my free time on writing code or with my friends.
Re:OpenNTPD (Score:5, Interesting)
have written most of OpenNTPD.
And you admit it?
I am sick and tired of wasting energy on each and every unfounded accusation someone posts somewhere.
Please show me where the OpenNTPD code computes the dispersion and root delay that it sends to clients, and I will retract my claim.
Re: (Score:2)
OpenNTPD was significantly more stable if I recompiled the kernel for pentium instead of 386. It was just a few milliseconds improvement in stability, but it was a clear difference. In the kernel config file there was simply a few consecutive lines labeled something like 386 486 586 686. I did nothing but commented out all but the 586 or 686 line and recompiled. This was about six years ago though, so I don't know if it's still an issue. I'm sorry I didn't subit a report back then. I meant to. Thanks for de
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
I don't know if the NTP protocol does [have a leap second provision].
Yes it does -- that's what the LI (Leap Indicator) field is for.
Re: (Score:2)
It's provided for in the protocol and in the software. NTP (and Chrony) will simply insert an extra second.
has to corrects my code (Score:1)
$sec = $sec + 1;
} else {
$sec = $sec;
}
Re: (Score:2)
I think that would double every second for the entire day. Be more specific.
Re: (Score:1)
Not only that, but this bug would kick in every year on June 30.
Also... why the else clause? A good compiler will *probably*... no make that *hopefully* optimize that away...
Christ that guy sucks!
Re: (Score:2)
Not only that, but this bug would kick in every year on June 30.
Also... why the else clause? A good compiler will *probably*... no make that *hopefully* optimize that away...
Christ that guy sucks!
I saw that too, then I thought, "It's Perl, do I really think that I know what it does?"
Re: (Score:2)
Looks like May 30th to my human brain... Who's got the brain that came up with the idea of having months start at zero, but day of month start at one?!?!
Re: (Score:2)
Who's got the brain that came up with the idea of having months start at zero, but day of month start at one?!?!
The same guy who decided that C arrays start at 0 instead of 1.
One of the common, if not most common, use of the month number is to look up the month name in an array so the human used is told "June" instead of "5".
Which reminds me of my wonderful Cruz book reader, running android, which has no ability to look up the month name from the number outside the full calendar app. When I set the alarm clock, the "repeat" shows, for my weekday alarm, "8:30 on 2,3,4,5,6".
Re: (Score:2)
Also... why the else clause? A good compiler will *probably*... no make that *hopefully* optimize that away...
PHP is not compiled! But that code won't be run anyway, it is just taking up 21 bytes of RAM but no cycles.
Re: (Score:2)
$sec = $sec + (($mon==5) && ($mday = 30));
Re: (Score:3)
Ugh. You have reminded me why I left Perl behind for a language that has strict typing.
Re: (Score:2)
Ugh. You have reminded me why I left Perl behind for a language that has strict typing.
umm you mean ?
sec += ((mon == 5 && mday == 30 && hour ==0 && min == 0 && sec == 0 year == leapyear) ? 2 : 1);
Still, that is pretty ugly but at least it works. Other wise time will only advance by 1 second every 4 years!
Re: (Score:2)
And in 2013.... (and 2014, and 2015, and 2016....)?
Re: (Score:2)
Don't make the mistake of assuming this code runs forever in a loop.
Re: (Score:2)
Well, it is going to have to run at least once a day in order to work.
Which means once a day every year it is going to fuck up.
Re: (Score:2)
I accept your chiding, but don't let it rise to actual criticism. Humorous pedantry is one thing, but you don't have enough information for real pedantry. For instance, without seeing the whole program, you don't know whether the immediate previous line of code was
if($year==2012) {
You also don't know if this is code only run during May, June, July, August, and September of 2012, as a special process. So again, ha ha, I laugh with you for ways to make jokes about silly tidbits of code posted to an unimportan
Re: (Score:2)
&& year == leapyear
Leap seconds aren't necessarily only applied in a leapyear.
Re: (Score:2)
who's code are you quoting? you might have mistakenly replied to the wrong comment; i never mentioned leap years.
Re: (Score:2)
Re: (Score:2)
Word. That's what I figured. But you wouldn't have been the first person on Slashdot to misquote and mischaracterize someone.
Re: (Score:2)
Re: (Score:3)
Well, I think we now have a good example of how NOT to code.
Re: (Score:2)
Wait a minute. Isn't this the code that documents itself?
Re:has to corrects my code (Score:5, Funny)
Re: (Score:2)
php scripters. pah.
FTFY
Re:has to corrects my code (Score:5, Funny)
Ready? (Score:1)
A matter of time.... (Score:3, Funny)
One small step for man; one leap second for computer systems?
Listen to WWV in North America (Score:5, Interesting)
On 5, 10, 15 or 20 MHz: at 00:00Z you will hear minute consisting of 61 seconds.
If you happen to have a radio controlled timepiece, this will also be your chance to see if they handle the leap second conversion or took the lazy way out and just rely on the next time sync fix the time.
00:00UTC June 30th 2012 is a Saturday evening in North America. What better way to celebrate a Saturday night?
Re:Listen to WWV in North America (Score:5, Funny)
00:00UTC June 30th 2012 is a Saturday evening in North America. What better way to celebrate a Saturday night?
Decisions, decisions....
I was going to watch my grass grow instead, but your suggestion sounds more promising. It won't tie up the entire night for any other activities I may plan for that weekend.
Re: (Score:2)
Re: (Score:2)
The leap second is at the end of June 30th. From the IERS bulletin:
So be sure to enjoy your extra long Saturday.
Re: (Score:1)
On 5, 10, 15 or 20 MHz: at 00:00Z you will hear minute consisting of 61 seconds.
If you happen to have a radio controlled timepiece, this will also be your chance to see if they handle the leap second conversion or took the lazy way out and just rely on the next time sync fix the time.
00:00UTC June 30th 2012 is a Saturday evening in North America. What better way to celebrate a Saturday night?
The sad part is, I really can't think of a better way to celebrate a Saturday night.
Re: (Score:1)
Ain't no party like a leap second party, 'cause a leap second party... is really short.
Re: (Score:3)
I've listened to a couple of leap seconds on WWV. I've recorded them too. I think I need to get out more. They sound like tick...tick...tick...(silence 23:59:59)...(silence 23:59:60)...BEEP (00:00:00)...tick...tick...tick...
...laura
Re: (Score:2)
They sound like tick...tick...tick...(silence 23:59:59)...(silence 23:59:60)...BEEP (00:00:00)...tick...tick...tick...
I'll leap right to the end of the cascade of Hellen Keller jokes::
If a leap second fell on Hellen Keller, would she make a sound?
It's a hassle, but a tiny one... (Score:5, Interesting)
Leap seconds are a tiny bit of problem when you have to time-stamp transactions coming in from all over the globe and keep them in date/time order. Some OSes don't support leap seconds, which complicates matters. We have the procedures documented from the last time this happened in 2008, but, of course, we've changed OS, DB and message queue vendors since then, so nothing applies anymore.
Time to spin up a new project and pay some high-priced consultants a lot of money to rewrite the procedures documentation yet again. I suspect we'll take the coward's way out and shut down processing for a minute before until a minute after and resync the clocks in the interim.
That will, of course, be charged to our SLA downtime, which will affect everyone's performance reviews at the end of the year. All this for a single goddamn second.
Re: (Score:3)
I suspect we'll take the coward's way out and shut down processing for a minute before until a minute after and resync the clocks in the interim.
This was how I figured transaction processing would be handled. It sucks that you have to pay high-priced consultants to get that answer; plenty of people would give it to you for free.
That will, of course, be charged to our SLA downtime
I didn't consider this aspect. Thinking about it makes me realize just how stupid a leap second is. A lot of transaction processing requires >99.999% uptime, and even that two minutes (assuming everything goes perfectly smoothly) is expensive. Couldn't they be accumulated and have an extra leap year once every 86400 years?
Re: (Score:2)
Leap seconds are not stupid, basing a time scale on the rotation rate of an unstable object is stupid.
Re: (Score:2)
Some OSes don't support leap seconds, which complicates matters.
Both unix and windows use time formats that assume there are 86400 seconds in a day. There may be papered on support for leap seconds but I wouldn't want to rely on it without extensive testing of the application/OS combination in question :(.
Re: (Score:2)
Both unix and windows use time formats that assume there are 86400 seconds in a day.
Actually, both UNIX and Windows have two time formats:
Amusingly:
Re: (Score:2)
Actually, both UNIX and Windows have two time formats:
the one that is more-or-less a count of second-or-sub-second intervals since a fixed time in the past;
the one that's year/month/day/hour/minute/second/maybe fractions of a second.
They do but my understanding was that the former was the internal format while the latter was mostly for display.
Re: (Score:2)
Actually, both UNIX and Windows have two time formats:
the one that is more-or-less a count of second-or-sub-second intervals since a fixed time in the past; the one that's year/month/day/hour/minute/second/maybe fractions of a second.
They do but my understanding was that the former was the internal format while the latter was mostly for display.
In most if not all UN*Xes, that's true. In modern Windows systems, it might be true, but I'm not sure; the fact that the "mostly for display" format is called SYSTEMTIME and the other format is called FILETIME, and that the call to get the former is GetSystemTime() and the call to get the latter is GetSystemTimeAsFileTime(), may or may not be significant, but they do at least seem to suggest that the "mostly for display" format is thought of as the Real System Time.
Re: (Score:2)
Afaict both windows and unix use core time formats that assume 86400 seconds in a day and simply cannot represent leap seconds. So even if leap second support is present in the OS it will be papered on and I wouldn't want to rely on it without extensive testing :(
Re: (Score:2)
Afaict both windows and unix use core time formats that assume 86400 seconds in a day and simply cannot represent leap seconds.
See the response to your other post on this [slashdot.org] for details.
Re: (Score:2)
...That will, of course, be charged to our SLA downtime, which will affect everyone's performance reviews at the end of the year. All this for a single goddamn second.
If you are concerned about your SLA, fix your software so it handles leap seconds correctly. You can test your fixes by hacking NTP to insert a positive or negative leap second at the end of every minute. When you get it working, you will have a competitive advantage over everyone who has to shut down.
Re: (Score:2)
I think the original poster's problems are on a scale much larger than 'fix your software'. He/she is getting data from multiple, disparate systems, and probably does not have any way to tell if a given source supports leap seconds or not. Without that info, there really isn't a fix available.
By hacking NTP to introduce frequent leap seconds, he can discover how each source handles leap seconds, and develop workarounds for each source he cannot fix. For example, if a particular source sits at 23:59:59 for two seconds, he might recognize that and write a filter or post-processor to convert the second second to 23:59:60 in messages received from that source.
Re: (Score:2)
Scale is still a problem ... for every source, s/he'll have to
Chances are many of the source systems belong to customers, suppliers and other third parties. Coordinating the testing would be complicated. Tracking the configuration would be even more complicated.
It'll be a lot cheaper for him to take a couple of minutes of outage every few years.
It's not quite that bad. You need a test version of your system anyway, so you can make changes without risking bringing down the production system. You hack NTP for the test system as a whole and observe what breaks. You fix problems and re-test, just as you do for any modification, until the test sytem functions correctly. You then copy those changes to the production system.
When a new version of an external component changes, you verify that it works using your test system. You would do this even if
Excellent excuse (Score:3)
"Officer. The reason I was driving so fast is that I was trying to adjust my watch using relativistic time dilation."
Re: (Score:2)
Re: (Score:2)
But if you go around the earth fast enough [wikipedia.org] BACKWARDS, time reverses - and you can reconcile that leap second with your watch.
Re: (Score:1)
And when we all brake we'll restore the energy back into the earth. At least what the air friction left us with. And, again, the air itself moving and then "braking" will probably destroy our purpose.
I work in a corporate environment (Score:5, Funny)
Rumor of abolishing leap seconds just two days ago (Score:1)
Party time (Score:1)
Yes!! An extra second for drinking.
Who is Leap? (Score:1)
Who is this "Leap"? Why is his second coming so important?
UTC and leap seconds (rant) (Score:1)
Hey, did you think gettimeofday returned the number of seconds since the epoch? That a call to gettimeofday would return a value >= to the last call? Well, it doesn't, because it's based on UTC, which is defined as seconds since the epoch, minus leaps seconds.
As a result, a value returned by gettimeofday does not refer 1:1 to a point in time, and the clock will skip a second backwards at random moments (leap seconds happen when IERS says so).
I mean, you could put the leap second logic in the same place t
Re: (Score:2)
Hey, did you think gettimeofday returned the number of seconds since the epoch? That a call to gettimeofday would return a value >= to the last call? Well, it doesn't, because it's based on UTC,
It's only "based on UTC" to the extent that the definition of "Seconds Since the Epoch" speaks of "Coordinated Universal Time name"; the formula to compute a "Seconds Since the Epoch" value from a "Coordinated Universal Time name", meaning year-month-day hour:minute:second expressed as a struct tm, can return the same value for two different Coordinated Universal Time names corresponding to different instants in time, so "Seconds Since the Epoch" is not actually a count of the number of seconds that have el
Re: (Score:2)
Yes, indeed. The gettimeofday() function should be used only when you need the time of day.
So what do I use if I need the time of day in UTC as specified by ITU-R TF.460-6 [itu.int]? I.e., what do I use to get the time of day in a form such that
Parse error... (Score:2)
Is that ((leap second) coming) or (leap (second coming))?
There's a significant difference!
Struggling with the title (Score:2)
Americanocentricism speaks again ! (Score:3)
Has NOTHING AT ALL to do with the US government. Pah !
Re: (Score:2)
IERS stands for INTERNATIONAL Earth Rotation and Reference System.
Meanwhile, At Stately Mel Gibson Manner..... GEMMA BACK MY SECOND!
YOU ARE ALL EDUCATED STUPID! (Score:2)
I never did understand what irradiating genetic material had to do with the natural timeframe of reality, but then, I'm not one of dem there big brains with a website on teh intarwebs.
Re: (Score:2)
Hmm perhaps there are these things "things" such as computers, atomic clocks, disciplined oscillators, what have you, that simply do not jibe with Pope Gregory's calendar?
Just maybe?
Oh for fucks sake why did I even reply?
Re: (Score:2)
Oh for fucks sake why did I even reply?
I thought the same thing, after seeing that the 1-level-up post came from an AC. SIGH
Re: (Score:2)
Hmmm, mildly clever troll? Or just further proof that Ron Paul is supported by really stupid people?
Poe's law [wikipedia.org] strikes again. (My vote is that the answer to the first question is "yes".)
Re: (Score:2)