While most of us are sound asleep on June 30, our computers and GPS systems will insert an extra second into our lives. It doesn’t seem like much, but a single second that was not planned for is enough to cause some interesting problems for computer systems.
Why Is There A Leap Second?
A leap second, similar to a leap year, is time that is inserted into our calendar to account for differences in the Earth’s rotation. A leap year inserts an extra day every four years to account for the fact that it takes roughly 365 and a quarter days to complete our trip around the sun. Inconsistencies in the revolution of the Earth, and the wobble of the planet on its axis, can cause slight irregularities in the time.
In the 1970s it was decided that when necessary an extra second would be inserted into time at either the end of June or the end of December. Since then, there have been 25 additional seconds that have been inserted, one at a time.
As computing has become ubiquitous and cloud platforms prevalent, the intricacies of time became increasingly important and an arbitrary insertion of an extra second can have unintended consequences. The last leap second happened on June 30, 2012 and not all systems responded well. Many Linux systems, for example, had processes revving up and utilizing CPU cycles, causing system instability and unanticipated reboots of systems.
In some ways this is reminiscent of Y2K, the computer “superbug” that was going to hurl civilization back to the dark ages when chips stopped properly calculating the year after the last two digits changed from “99” to “00.” In this case however, the stakes are much lower and there is no real risk of lasting damage. But while it’s no Y2K, you should be prepared for extra support issues to be dealt with on July 1, 2015.
How Does The Leap Second Affect IT Pros?
First, you need to know that the leap second is coming, so in case you see systems that are displaying strange behavior you have an idea of a possible cause. Second, you need to know that there are some steps you can take to ensure your systems are ready. Finally, you should know how cloud providers are handling this issue in their cloud platforms.
Leap Second In Operating Systems
Microsoft Windows OS — IT Professionals really don’t need to worry about Windows based computers. Whether on a domain or not, you’re likely configured to update the time regularly through the Windows Time Service. If that’s the case, you’re going to get the extra second on the next synchronization after the leap second.
Apple Mac OS — Macs get their time synchronization from time.apple.com, and are all expected to handle the extra second without error.
Linux OS — Linux distributions are not always ready to handle the leap second. For example, when the last leap second occurred in 2012, there were several incidents of processes consuming large amounts of CPU after the leap second. Red Hat Enterprise Linux users running version 7 should be fine, but users running earlier versions may experience a hang after the leap second message is inserted. Debian released a fix after the 2012 leap second, so hopefully that fix is still working in subsequent releases.
Leap Second In Databases
Because of their requirement to process large amounts of data and the use of transactions to track exactly when those updates are made, databases pose a special consideration for leap seconds.
Microsoft SQL Server — Microsoft’s SQL is unaffected by the leap second.
MySQL — If you’re using MySQL version 5.1.31 or later, you’re ok. If you’re still on a previous version, you may experience problems from the leap second. Any database records that are created or updated precisely during the leap second will appear to work at first but will cause problems later. After a database export, which will also be able to complete without errors, attempts to restore the data will fail due to a validation error. Performing a mysqldump will not cause the errors; but attempting to restore a backup with an update occurring on the leap second will cause the restore to fail due to an invalid value. Later versions of MySQL handle the lead second without error.
Oracle — Oracle had problems dealing with the leap seconds in the past, but it appears that now, as long as your operating system handles the leap second effectively, then your Oracle database should too.
MongoDB — MongoDB is architected to account for slight discrepancies in time due to being built for distributed clusters. As a result of this design, no problems are expected from the leap second.
Leap Second In Network Devices
Cisco — Cisco responded to the announcement of a leap second with an effort to predict any impact, taking into consideration impact from previous leap seconds. The company’s analysis was a limited number of incidents related to the leap second, but some did occur. Of those that occurred, most were able to be resolved by a reboot or assistance from tech support. For a list of products that may be affected, check the Cisco leap second product information page.
Juniper Networks — Juniper devices running JunOS, plus WX//WCX devices all get their time information from NTP. If configured, all are able to handle the leap second without worry.
Palo Alto — Palo Alto firewalls will correctly handle the leap second by using an NTP server either inside the network or from an external service. The firewall acts as an NTP client, and gets synchronized along with all of the other client devices.
Leap Second In Cloud Platforms
Amazon Web Services — AWS will spread the extra second out over several hours. Instead of having one extra second at the end of the day, each second will be increased by a miniscule amount of time beginning on June 30, 2015 at noon.
Microsoft Azure — Microsoft services use the same time synchronization services across all of its services. The 2012 leap second caused no occurrences of outages or disruptions, so the 2015 leap second should be handled similiarly.
Google Compute — Google Compute also spreads the leap second out, but begins the spreading at 4am on June 30.
Oracle Exalogic — Exalogic has issued a patch for some older kernels that cannot handle the leap second.
OpenStack — OpenStack version 1.5 included an update to account for the leap second.
The many systems that go into our enterprises and systems are all reliant on proper time to keep everything in sync. While most of your systems are going to be ok, now is a great time to review your infrastructure to locate components that may require an update.