The server froze and its watchdog stopped it
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.
PerformanceEvery server type[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.txtYour 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-timeinserver.properties: 60000 milliseconds (one minute) by default. The log saysA 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-timeinspigot.yml(60 seconds by default) it printsThe 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_watchdoginstead.
How to fix
- Start the server again; the world was saved up to the last autosave.
- Look at what was running when it froze. On Paper, the thread dump under
Server thread dumplists the plugin frames of the main thread first; the plugin named there is the first suspect. On other servers, the crash report’sServer threadstack shows the code that was running. - 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.
- If the server is often behind before it freezes (
Can't keep up!lines), lower the load: a shorterview-distanceandsimulation-distance, fewer entities, or more CPU and memory. A profiler such as spark shows where tick time goes. - Raising
max-tick-timeortimeout-timeonly 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.
| Parameter | Meaning |
|---|---|
plugin | On 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. |
seconds | How 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 tookConsidering it to be crashed, server will forcibly shutdown.The server has stopped responding!The server has not responded forCreating thread dumpMain thread terminated by WatchDog due to hard crashjava.lang.Error: ServerHangWatchdog detected that a single server tick tookjava.lang.Error: Watchdog