[Crash] Mechanical saw contraption crashes dedicated server when attempting to saw mangrove roots
RaidenKoizuma opened this issue ยท 9 comments
Describe the Bug
Mechanical saw contraption w/ item vaults and a portable storage interface that saws mangrove roots and has deployers which replants mangrove propagules crashes servers consistently.
Currently occuring on a dedicated server.
Reproduction Steps
- Set up a mechnaical saw contraption connected to 3x3 item vault w/ setup portable storage iterface on a minecart that goes back and forth. Also include line of deployers that replants.
- Let it run back and forth. It should crash when it hits the mangrove roots.
...
Expected Result
Not to crash
Screenshots and Videos
Crash Report or Log
Operating System
Windows 10
Mod Version
0.5.1f
Minecraft Version
1.20.1
Forge Version
47.2.6
Other Mods
No response
Additional Context
Other Crash: https://pastebin.com/z6TXXkLn
I got issue that seems to be the same one. Our server started crashing when we approch a treefarm, build with create mechanical saw. The saw is trying to cut a mangroove tree root block. as long as we do not load that are we are fine. but as soon we approach the farm the server crashes.
Anny suggestions on how to fix it?
This is not a usual crash. It is the watchdog thread noticing that a tick is taking way too long to process and forcing a crash. Probably 2 threads are deadlocked. Your only option is to disable mods until hopefully you find the culprit.
Had a similar crash happen on server due to create contraption with mechanical saw, causing server to freeze and crash due to watchdog: https://pastebin.com/y5kqvQ04
This is just a wild guess, but I think if the saw tries to break too many logs at once, it fails, but keeps trying repeatedly, causing the freeze?
@drwoops I did some testing today and can confirm it occurs with only the create mod installed (world edit was also installed to facilitate setting up my tests).
I've added the additional logs to my gist.
What I'm seeing, as I'm testing things is that it seems like, for a given server, there is a limit to the number of blocks you can break simultaneously without lagging the tick so hard that the watchdog kicks in.
So far on a dedicated server with 10GB DDR4 I've found that 769 blocks in a "tree" will crash, 737 blocks will lag severely but succeed, 641 will succeed with no problem. (Sorry for the weird numbers, my test setup was a single block with some portion of a chunk above it).
When our private server crashed I'm estimating it likely tried to simultaneously cut around 400 blocks, that server's using 16GB DDR3
This may also impact drills but I haven't tested and it would be out of scope for this issue.
Out of interest I just ran 800 drills against a uniform surface on a mechanical pulley and aside from the existence of the drills killing my framerate there was no problem.
So it seems like focus would be on the calculations Create does to identify and verify all of the tree blocks to break rather than the actual break itself.
Some spark data from a short and simple run of a single saw through "trees", one each, of 64, 128, and 256 blocks. https://spark.lucko.me/a7yuGxcfQh
Adding on to this one because it seems to be the same issue.
Logs are in the following Gist and I'll be having a look at the code later today. I'm suspecting, based on what I've seen so far that @AmmoniumX is correct and it has to do with the saws trying to account for too many tree blocks. It also seems like those checks may be happening whether the contraption is moving or not as we're seeing tick lag. Crashes are only happening with a moving contraption though.
https://gist.github.com/SgiobairOg/921c05e4e2d505840215dd918a1e8b6f