StackOverflow crash about crafting requests
Eufranio opened this issue · 13 comments
I just got this StackOverflow error:
java.lang.RuntimeException: java.lang.StackOverflowError
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:663)
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:589)
at net.minecraftforge.fml.common.FMLCommonHandler.onPostServerTick(FMLCommonHandler.java:265)
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:710)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:524)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.StackOverflowError
at java.lang.String.valueOf(String.java:2994)
at java.lang.StringBuilder.append(StringBuilder.java:131)
at com.minecolonies.api.colony.requestsystem.token.StandardToken.toString(StandardToken.java:72)
at java.lang.String.valueOf(String.java:2994)
at java.lang.StringBuilder.append(StringBuilder.java:131)
at com.minecolonies.coremod.colony.requestsystem.management.handlers.RequestHandler.getRequestOrNull(RequestHandler.java:520)
at com.minecolonies.coremod.colony.requestsystem.management.manager.StandardRequestManager.getRequestForToken(StandardRequestManager.java:211)
at com.minecolonies.coremod.colony.requestsystem.resolvers.PrivateWorkerCraftingRequestResolver.getBuilding(PrivateWorkerCraftingRequestResolver.java:42)
at com.minecolonies.coremod.colony.requestsystem.resolvers.PrivateWorkerCraftingRequestResolver.getBuilding(PrivateWorkerCraftingRequestResolver.java:59)
at com.minecolonies.coremod.colony.requestsystem.resolvers.PrivateWorkerCraftingRequestResolver.getBuilding(PrivateWorkerCraftingRequestResolver.java:59)
at com.minecolonies.coremod.colony.requestsystem.resolvers.PrivateWorkerCraftingRequestResolver.getBuilding(PrivateWorkerCraftingRequestResolver.java:59)
Complete crash report: https://hastebin.com/odemufugey.sql
Seen
Still digging. @ProsperCraft is it happening al the time or just sometimes randomly?
If one of the reporters is willing, I can look into providing you a custom logging configuration which might help us debug this faster. Drop me a line via the communication channel of your choice (mkienenb at gmail dot com, discord, forums). I will likely need to know how you launch the game to make it work.
@mkienenb That would not help here
The shear volume of logging calls the rs makes slows down a server with about 600%.
What i need is the rest of that stack. I can not determine if this problem is client or server side (aka rendering or logic)
I can help you with that but I'm running the 7330 1.12 build (and cannot update on 1 or 2 days). You could add a check before the StackOverflow happens (check if the target object is the same as the caller object before calling the method again) and drop a Thread.dumpStack() there. If you could provide me a build based on the 7330 commit, I can test it for you.
Also, my crash was on the server, not client, so the code called was in the server side.
I'm not suggesting a bandaid fix, but a stacktrace to help you know what caused this StackOverflow, so you know what was in the stack at the moment of the error.
I cannot update now because I'm running a server with a modpack and some people. I'm not at my main computer and cannot update and push my pack + server now, so I'll stick with that build until I go home.
We are getting exception in server tick loop-
minecolonies-universal-1.12.2-0.8.7415
https://paste.fedoraproject.org/paste/pRJSBVpXsYR40pAiwGMGVw
Just got a StackOverflow crash. My builder is currently requesting a "Spruce Plain Timer Frame", and I previously tried to add all of the "Timer Frame" recipes to his crafting list. This probably created an infinite crafting recursion until the stack exploded.
Version 1.12.2-0.8.9646 on ATM3