PerlandFailure catalogue

The server froze and its watchdog stopped it

Fatalserver_watchdog

One server tick ran far too long, or the main thread stopped answering, so the server's watchdog treated it as a crash and shut the server down.

What the log shows

Written example4 lines
[22:41:10] [Server thread/WARN]: Can't keep up! Is the server overloaded? Running 4012ms or 80 ticks behind
[22:43:15] [Server Watchdog/ERROR]: A single server tick took 60.00 seconds (should be max 0.05)
[22:43:15] [Server Watchdog/ERROR]: Considering it to be crashed, server will forcibly shutdown.
[22:43:16] [Server Watchdog/ERROR]: This crash report has been saved to: /data/./crash-reports/crash-2026-11-05_22.43.16-server.txt

Your log will have other names, versions and times. Search a line of it from all failures.

What it means

The server does its work in ticks, 20 a second, each meant to take at most 50 milliseconds. A separate watchdog thread checks that ticks keep finishing. When one tick runs longer than the watchdog allows, the watchdog decides the server has hung, writes a crash report and stops it.

  • Vanilla, Forge, NeoForge and Fabric use max-tick-time in server.properties: 60000 milliseconds (one minute) by default. The log says A single server tick took 60.00 seconds.
  • Paper, Spigot and their forks have their own watchdog. Paper prints a thread dump after 10 seconds without an answer and every 5 seconds after that; a server that answers again goes on, and the issue is then a warning. After timeout-time in spigot.yml (60 seconds by default) it prints The server has stopped responding! and stops the server.

Why it happens

  • A plugin or mod blocks the main thread. It waits for a database, a web request or a file, loops forever, or does a very large job in one go.
  • A world operation that is too big for one tick: a huge WorldEdit edit, loading or generating many chunks at once, an explosion of thousands of entities.
  • The machine is starved. Too little CPU, a disk that stalls, or a Java heap so full that the garbage collector runs without pause (see out_of_memory).
  • The Java process was frozen from outside, for example by a pause of the container. When that pause was itzg’s autopause, the issue is autopause_watchdog instead.

How to fix

  1. Start the server again; the world was saved up to the last autosave.
  2. Look at what was running when it froze. On Paper, the thread dump under Server thread dump lists the plugin frames of the main thread first; the plugin named there is the first suspect. On other servers, the crash report’s Server thread stack shows the code that was running.
  3. Update or remove that plugin or mod. If the freeze follows a command or a farm, avoid it or split the work into smaller steps.
  4. If the server is often behind before it freezes (Can't keep up! lines), lower the load: a shorter view-distance and simulation-distance, fewer entities, or more CPU and memory. A profiler such as spark shows where tick time goes.
  5. Raising max-tick-time or timeout-time only hides a real freeze; change them only for a known slow operation.

In Perland

The issue appears in the server’s Diagnosis tab with how long the tick lasted and, on Paper, the plugin the thread dump names, and the server’s issue history shows whether it keeps coming back. On servers Perland pauses while idle, Perland turns both watchdogs off before the server starts, since a pause would otherwise look like a freeze; there a hang no longer ends in this stop.

References

Details the diagnosis reports

Perland's server diagnosis returns this failure as the code server_watchdog with these parameters, each present only when the log names it.

ParameterMeaning
pluginOn Paper and its forks, the plugin whose code the main thread was running in the watchdog's thread dump, when its jar can be told apart from the server's own code.
secondsHow long the frozen tick or the silence lasted, as the watchdog printed it (for example 60.00, or 10 for Paper's first thread dump).

Log lines this page covers

  • A single server tick took
  • Considering it to be crashed, server will forcibly shutdown.
  • The server has stopped responding!
  • The server has not responded for
  • Creating thread dump
  • Main thread terminated by WatchDog due to hard crash
  • java.lang.Error: ServerHangWatchdog detected that a single server tick took
  • java.lang.Error: Watchdog