Mekanism Tools

Mekanism Tools

77M Downloads

Crash due to server Timing out

Flame1211 opened this issue ยท 9 comments

commented

Issue description

Issue has been occuring for a little over a week now. Server crashes due to spark: timed out waiting for world statistics. only happens after occasional world restarts, if it happens I usually have to roll back the server a few hours as whatever happens happens silently and bricks the backup files that have the issue. cant find anything in console related to it so its unknown if its broken until the restart. crashlog points to mekanism so thought id put a report in here.

Steps to reproduce

play server normally, everything seems fine, server restarts, timed out waiting for world statistic. server crashes due to watchdog. (ive tried making watchdog infinite, server never recovers)

Minecraft version

1.20.x or earlier (No longer being developed)

NeoForge version

Normal Forge. Client: 47.2.17 Server: 47.3.5

Mekanism version

Older

Other relevant versions

No response

If a (crash)log is relevant for this issue, link it here: (It's almost always relevant)

https://pastebin.com/q5qih3iw

commented

That log just prints what was running at the time the watchdog had enough, not necessarily what caused it.

You'll need to run a profiler external to MC (e.g. VisualVM) on startup to find the true cause.

commented

alright ill give it a shot and get back to you here if the issue still seems to be mekanism, if it isnt Ill close the report.

Edit, ive never used visualVM before, is there anything specific im looking for?

commented

Attach to a process, Click the Sampler tab and start a CPU sampling session, check the Total Time (CPU) column

commented

alright these seem to be the highest and the only ones that continue to tick up after the timing out starts:
image

commented

You'll want to expand the server thread one and dig deeper (again, make sure to sort by CPU time not total time)

commented

yeah realized it was sorted by total after i sent it
first image, sorted by total cpu:
image

following total time down the chain in server thread, this is where it stopped:
image

commented

Odd, it's trying to get a tile entity in an unloaded chunk, which shouldn't really be happening. I think that method is supposed to be checking that, but will have to check

commented

Alright, sounds good.

Is there an easy fix for this on my end?

commented

OK, that method does indeed check that the block is loaded. Your server is reporting that it is loaded, but is then trying to load it from disk.

You'll need to take that up with your modloader.