Time Crashing Servers

If you haven't heard already, a large number of Minecraft servers had issues in the last day due to a typo related to time. The impact was large enough that Mojang's session servers temporary were unresponsive due to the flood of players attempting to reconnect to affected servers.

Spigot is a fork of the Bukkit/Craftbukkit projects. While most of the code base is the same as Craftbukkit, Spigot does introduce alterations as part of adding desired functionality. Unfortunately, like all projects, bugs can and do sometimes happens. One small code alteration involved unintentionally miscalculating server tick, which is based on time. Server tick is like air, it's important but you generally don't notice it unless there's a problem. The miscalculation resulted in a big problem where a negative number was introduced somewhere numbers should absolutely not be negative and interrupted server tick. The result for being affected was a locked up server requiring restart with a fixed server version.

Fortunately, there are solutions available. These are the most commonly applied ones:

  • Reverting back to official Craftbukkit builds (vanilla and Craftbukkit servers are not affected)
  • Updating to the latest 1.7.5 version of Spigot, which has the miscalculation corrected.
  • Using a backported "fixed" version of Spigot for 1.7.2/1.6.4

Craftbukkit builds: http://dl.bukkit.org/downloads/craftbukkit/ (link broken)

Spigot builds: http://ci.md-5.net/view/Spigot/job/Spigot/ (link broken)

Backport links: http://www.spigotmc.org/threads/arrayindexoutofboundsexception.14826/

It is worth noting, Spigot is used by a large number of servers for good reason.
MCStats Dynamic Graph

As problematic as this bug was, it hardly represents Spigot. Both vanilla Minecraft and Craftbukkit have had their own critical bugs in the past.

Honestly, the only thing that really bothered me about the incident, was not the part about having to spend approximately an hour fixing servers, but that Mojang Support tried to sweep under the rug that their servers were unavailable briefly. Mojang support instead claimed that all their servers were running in response to players asking why they couldn't log in. It was only with people correcting this, that Mojang Support admitted in replies that the session servers were indeed overwhelmed. I can tolerate a brief outage, just don't pretend it never happened.

{{ message }}

{{ 'Comments are closed.' | trans }}