DHS Crash on join

Plugin version: 1.21.4:0.8.0-SNAPSHOT Mod version: 2.3.0-b-deb After joining the server the client receives a message that the terrain is downloading and shortly after the server crashes.
2025-02-03 17:16:14: player joined the game
2025-02-03 17:16:14: player[/192.168.178.11:57560] logged in with entity id 72 at ([world]178.80550143952016, 102.0, -1359.4170969894774)
2025-02-03 17:16:14: [DHS] Received DH config for player in world
2025-02-03 17:17:19 WARN mc-server-runner Minecraft server failed. Inspect logs above for errors that indicate cause. DO NOT report this line as an error. {"exitCode": -1}
2025-02-03 17:16:14: player joined the game
2025-02-03 17:16:14: player[/192.168.178.11:57560] logged in with entity id 72 at ([world]178.80550143952016, 102.0, -1359.4170969894774)
2025-02-03 17:16:14: [DHS] Received DH config for player in world
2025-02-03 17:17:19 WARN mc-server-runner Minecraft server failed. Inspect logs above for errors that indicate cause. DO NOT report this line as an error. {"exitCode": -1}
21 Replies
Puhpine
Puhpine•5w ago
can you send the full logs of both server and client?
Plat1num
Plat1numOP•5w ago
This is the full log from the server. Server boots, I join, and around 1 minute later, shortly after it starts downloading, it crashes. Here are the client logs:
Jckf
Jckf•5w ago
Not a lot of information to go on here, but I'm thinking you are hosting your server through some sort of web panel and the server is being killed by the panel for using too much RAM. How much RAM do you have allocated?
Plat1num
Plat1numOP•5w ago
4GB with 75% being regularly in use. I will try to allocate more and see if that helps. Thank you
Jckf
Jckf•5w ago
You can also try reducing the number of generator threads in DHS' config file to lower the demand. With only 4 gigs I'd maybe stick to a single worker
Plat1num
Plat1numOP•5w ago
I am hosting it on my own hardware so I can increase it no problem!
Jckf
Jckf•5w ago
👌
Plat1num
Plat1numOP•5w ago
I'll let you know if the situation improves.
Jckf
Jckf•5w ago
Was the guess about using a panel correct? Or is it living inside of some other management software?
Plat1num
Plat1numOP•5w ago
I am running it in a docker container using this container: https://github.com/itzg/docker-minecraft-server It's not a web panel, but close enough 😄 Pretty much the same thing just without a GUI
Jckf
Jckf•5w ago
Okay cool, that effectively what Pterodactyl does, which is the panel I am most familiar with I guess the Docker daemon would log it if it was a forcefull kill Kernel and syslogs would also be worth checking
Plat1num
Plat1numOP•5w ago
It detects the crash and immediately reboots. The log ends at the server log I sent earlier
Jckf
Jckf•5w ago
The container yeah, but the Docker daemon is hopefully not crashing
Plat1num
Plat1numOP•5w ago
I suppose not hahaha, I wouldn't know where else to see logs that might related to this in this OS I am using. I'm slowing working on migrating to a different OS with better management.
Jckf
Jckf•5w ago
On the Linux distros I am used to, "dmesg -T" will give you the kernel log. Any processes the OS kills will show up there For Docker I suppose it would be somewhere under /var/log, probably a file or directory starting with "docker"
Plat1num
Plat1numOP•5w ago
Ah nice One moment
[Mon Feb 3 17:17:31 2025] Memory cgroup out of memory: Killed process 1871842 (java) total-vm:18723052kB, anon-rss:7783572kB, file-rss:1204kB, shmem-rss:0kB, UID:568 pgtables:16360kB oom_score_adj:999
[Mon Feb 3 17:17:31 2025] Memory cgroup out of memory: Killed process 1871842 (java) total-vm:18723052kB, anon-rss:7783572kB, file-rss:1204kB, shmem-rss:0kB, UID:568 pgtables:16360kB oom_score_adj:999
Doesn't get more straight forward than that
Jckf
Jckf•5w ago
Nice
Plat1num
Plat1numOP•5w ago
Awesome stuff, thanks for the help!
Jckf
Jckf•5w ago
No worries 👌
Plat1num
Plat1numOP•4w ago
How much RAM would you recommend per worker?
Jckf
Jckf•4w ago
Each worker will process an area of 4x4 chunks for each LOD they generate, and it's completely up to the server itself to decide when to unload these chunks again afterward, which means it's a question with many different answers. I would recommend testing it with a few different values in your own setup, and making a decision based on that. When DHS has requested a chunk load specifically for LOD generation, it also requests an unload with saving disabled after, but again this is completely up to the server to actually execute. So in practice if we compare the result of running DHS on 4 of the most popular server solutions, Spigot, Paper, Purpur, and Folia, you're likely to get 4 very different results.

Did you find this page helpful?