Crying Ghasts (Forge)

Crying Ghasts (Forge)

273k Downloads

[Bug] Tree Harvesting Darkoak results in infinite loop

twothe opened this issue ยท 3 comments

commented

Information

Minecraft version: 20.1
Modloader: Forge
Forge version: 47.3.5
Environment: Multiplayer

Mod name: Tree Harvester
Mod version: 8.7

Description

When trying to harvest a Dark Oak tree, the mod tried to harvest the entire forest and caused the watchdog to crash the server.

Crash report

java.lang.Error: ServerHangWatchdog detected that a single server tick took 180.00 seconds (should be max 0.05)
        at java.util.ArrayList.indexOfRange(ArrayList.java:298) ~[?:?] {re:mixin}
        at java.util.ArrayList.indexOf(ArrayList.java:286) ~[?:?] {re:mixin}
        at java.util.ArrayList.contains(ArrayList.java:275) ~[?:?] {re:mixin}
        at com.natamus.treeharvester_common_forge.processing.TreeProcessing.getLogsToBreak(TreeProcessing.java:119) ~[treeharvester-1.20.1-8.7.jar%23440!/:?] {re:classloading}
        at com.natamus.treeharvester_common_forge.processing.TreeProcessing.getLogsToBreak(TreeProcessing.java:118) ~[treeharvester-1.20.1-8.7.jar%23440!/:?] {re:classloading}
        at com.natamus.treeharvester_common_forge.processing.TreeProcessing.getLogsToBreak(TreeProcessing.java:118) ~[treeharvester-1.20.1-8.7.jar%23440!/:?] {re:classloading}
        at com.natamus.treeharvester_common_forge.processing.TreeProcessing.getLogsToBreak(TreeProcessing.java:118) ~[treeharvester-1.20.1-8.7.jar%23440!/:?] {re:classloading}
        at com.natamus.treeharvester_common_forge.processing.TreeProcessing.getLogsToBreak(TreeProcessing.java:118) ~[treeharvester-1.20.1-8.7.jar%23440!/:?] {re:classloading}
        at com.natamus.treeharvester_common_forge.processing.TreeProcessing.getLogsToBreak(TreeProcessing.java:118) ~[treeharvester-1.20.1-8.7.jar%23440!/:?] {re:classloading}
        at com.natamus.treeharvester_common_forge.processing.TreeProcessing.getLogsToBreak(TreeProcessing.java:118) ~[treeharvester-1.20.1-8.7.jar%23440!/:?] {re:classloading}
        at com.natamus.treeharvester_common_forge.processing.TreeProcessing.getLogsToBreak(TreeProcessing.java:118) ~[treeharvester-1.20.1-8.7.jar%23440!/:?] {re:classloading}
...

It might be a good idea to add a limit here after which it stops evaluating.

commented

ty

commented

This is the common reason the server is currently crashing.

FYI: the server uses a terrain mod that generates bigger trees that tend to be connected, therefore harvesting those trees often results in a stack overflow.

commented

Thank you for opening the issue and giving the mod a try! This has been fixed in version 9.1 of Tree Harvester. Apologies for the inconvenience.

https://curseforge.com/minecraft/mc-mods/tree-harvester/files