How to Fix 'Failed to Check Session Lock' on Your Minecraft Server
Resolve session.lock errors on your Minecraft Java server caused by unclean shutdowns, multiple instances, or world corruption.
"Failed to check session lock, aborting" means the server tried to acquire exclusive access to a world folder and was refused. Minecraft uses a session.lock file to ensure only one server instance writes to a world at a time — and when something goes wrong with that file, the server refuses to start as a safety measure.
What session.lock Does
Every world folder contains a session.lock file. When a server starts:
- It opens
session.lockand writes a unique value - It keeps the file lock open while running
- On clean shutdown, it releases the lock
- On the next start, it confirms no other process is holding the lock
If a server is killed (power loss, OOM kill, container restart) instead of stopped cleanly, the lock file may be left in a state the next start can't read — triggering this error.
Why It Happens
| Cause | How common |
|---|---|
| Server killed mid-run (OOM, exit 137, panel kill) | Most common |
| Two server instances on the same world | Common with cloned servers |
| Container restart during file write | Sometimes |
| Filesystem corruption | Rare |
| Disk full | Rare |
Fix It
Make sure no other server is running on this world
Open the XGamingServer Panel Dashboard and confirm only one server is running. If you cloned a server or have multiple instances pointing at the same world, stop all of them.
Critical: Never run two servers on the same world folder. Even briefly. It causes irreversible corruption — chunks get written by both servers and become unreadable.
Stop the affected server
In Console, click Stop. Wait until the Dashboard shows it as fully Offline.
Delete session.lock
Click Files in the sidebar. Open the world folder (world/ by default — or whatever your level-name is). Delete the session.lock file.
If you have separate Nether/End folders (Spigot/Paper format), check world_nether/ and world_the_end/ too — delete session.lock from each.
Safe to delete:
session.lockis a runtime lock file. The server recreates it on startup. Deleting it won't affect your world data.
Start the server
Start from Console. The server creates a fresh session.lock and boots normally.
If the Error Comes Back
If session.lock errors keep happening on every restart, you have a deeper issue:
| Problem | Fix |
|---|---|
| Server keeps OOM-killing | Increase RAM — see How Much RAM. Each kill leaves a stale lock |
Watchdog kills from max-tick-time | Find the lag source with Spark |
| Two scheduled restarts overlap | Check Schedules for overlapping tasks |
| World folder corrupted | Restore from Backups, or replace level.dat with level.dat_old |
| Disk full | Check the panel storage usage |
| Filesystem error on host | Open a support ticket — host-side fsck may be needed |
Don't Confuse with Other Lock Errors
| Error message | What it actually means |
|---|---|
Failed to check session lock | This guide |
Address already in use | Network port conflict, not file lock |
Cannot lock storage | Same root cause as session lock — same fix |
Session lock check failed for world: world | Same root cause as above |
Common Mistakes
| Mistake | Fix |
|---|---|
| Deleting the whole world folder | Only delete session.lock — never the world itself |
Deleting session.lock while the server is running | Stop the server first |
| Ignoring the underlying crash that left the lock | Find what's killing the JVM and fix that too |
| Restoring the lock from a backup | Don't — backups shouldn't include session.lock |
Related Guides
How is this guide?

How to Fix a Minecraft Server That Won't Start
Diagnose and fix common reasons your Minecraft Java server fails to start — EULA, Java version, RAM, corrupted JAR, mods, world corruption, exit codes.
How to Fix 'Ticking Entity' Crashes on Your Minecraft Server
Identify and remove the corrupted entity causing repeated 'Ticking entity' crashes on your Minecraft Java server, using kill commands or MCA Selector.