Repurposed Structures (Neoforge/Forge)

Repurposed Structures (Neoforge/Forge)

61M Downloads

1.21.1 Fabric - Minecraft game event bug deadlocks when skeleton horsemen spawns in worldgen

Aeronatow opened this issue ยท 12 comments

commented

In my case it happens on;
Seed : 2438457204829392124 East : 900 / 200 towards south east owerworld.

Can't post the zip file as it's too much / is crashed my PC while trying to figure out...
So a screenshot might help?
Mods Used
Used mods

commented

Logical, Will test that option now if it's simple as structures spawning causing it. first with other structure mods to see the conflicting one, most likely will see the issue there. but if not will try then the other stuff that might effect structures itself if I have any.

commented

It does not appear to be a worldgen issue. When the deadlock happens, none of the worldgen threads are running code. Instead, it seems like someone put a task onto the Server Thread that is grabbing chunks and deadlocked the internal server. No lines point to a mod since it was done with a CompleteableFuture it seems. Only way to find out offender will be to remove mods and retry until this seed and coordinate works again


"Server thread" #157 [13064] prio=8 os_prio=1 cpu=3750.00ms elapsed=162.68s tid=0x000001b4ddecc170 nid=13064 runnable  [0x000000ac015fd000]
   java.lang.Thread.State: TIMED_WAITING (parking)
        at jdk.internal.misc.Unsafe.park([email protected]/Native Method)
        - parking to wait for  <0x00000005ea706758> (a java.lang.String)
        at java.util.concurrent.locks.LockSupport.parkNanos([email protected]/LockSupport.java:269)
        at net.minecraft.class_1255.method_20813(class_1255.java:157)
        at net.minecraft.class_1255.method_18857(class_1255.java:147)
        at net.minecraft.class_3215$class_4212.method_18857(class_3215.java:525)
        at net.minecraft.class_3215.getChunkBlocking(class_3215.java:745)
        at net.minecraft.class_3215.method_12121(class_3215.java:666)
        at net.minecraft.class_1937.method_8402(class_1937.java:208)
        at net.minecraft.class_1937.method_8497(class_1937.java:6094)
        at net.minecraft.class_1937.method_8320(class_1937.java:6586)
        at net.minecraft.class_1922.method_32881(class_1922.java:62)
        at net.minecraft.class_1922$$Lambda/0x0000000801f55ea8.apply(Unknown Source)
        at net.minecraft.class_1922.method_17744(class_1922.java:153)
        at net.minecraft.class_1922.method_32880(class_1922.java:61)
        at net.minecraft.class_8514$class_8516.method_51400(class_8514.java:318)
        at net.minecraft.class_8514$class_8516.method_32947(class_8514.java:269)
        at net.minecraft.class_7719.method_45492(class_7719.java:37)
        at net.minecraft.class_7719$$Lambda/0x0000000801c27290.visit(Unknown Source)
        at net.minecraft.class_5711.method_32943(class_5711.java:79)
        at net.minecraft.class_7719.method_45490(class_7719.java:48)
        at net.minecraft.class_3218.method_32888(class_3218.java:1002)
        at net.minecraft.class_1936.method_43275(class_1936.java:111)
        at net.minecraft.class_1297.method_32875(class_1297.java:1218)
        at net.minecraft.class_1297.method_5627(class_1297.java:2278)
        at net.minecraft.class_1297.method_5873(class_1297.java:2229)
        at net.minecraft.class_1308.method_5873(class_1308.java:1414)
        at net.minecraft.class_1299.method_17843(class_1299.java:603)
        at net.minecraft.class_1299$$Lambda/0x0000000801b357d0.apply(Unknown Source)
        at java.util.Optional.map([email protected]/Optional.java:260)
        at net.minecraft.class_1299.method_17842(class_1299.java:597)
        at net.minecraft.class_1299$1.method_31490(class_1299.java:618)
        at net.minecraft.class_1299$1$$Lambda/0x0000000801b2d340.accept(Unknown Source)
        at java.util.ArrayList$ArrayListSpliterator.tryAdvance([email protected]/ArrayList.java:1685)
        at net.minecraft.class_1299$1.tryAdvance(class_1299.java:617)
        at java.util.Spliterator.forEachRemaining([email protected]/Spliterator.java:332)
        at java.util.stream.ReferencePipeline$Head.forEach([email protected]/ReferencePipeline.java:762)
        at net.minecraft.class_5579.method_31835(class_5579.java:203)
        at net.minecraft.class_3218.method_31426(class_3218.java:1552)
        at net.minecraft.class_9310.method_60552(class_9310.java:157)
        at net.minecraft.class_9310.method_60551(class_9310.java:142)
        at net.minecraft.class_9310$$Lambda/0x0000000801ac2a98.run(Unknown Source)
        at net.minecraft.class_2818.method_12206(class_2818.java:471)
        at net.minecraft.class_9310.method_60553(class_9310.java:147)
        at net.minecraft.class_9310$$Lambda/0x0000000801ac75a8.get(Unknown Source)
        at java.util.concurrent.CompletableFuture$AsyncSupply.run([email protected]/CompletableFuture.java:1768)
        at net.minecraft.class_3900.method_17634(class_3900.java:62)
        at net.minecraft.class_3900$$Lambda/0x0000000801a27370.run(Unknown Source)
        at net.minecraft.class_1255.method_18859(class_1255.java:162)
        at net.minecraft.class_3215$class_4212.method_18859(class_3215.java:552)
        at net.minecraft.class_1255.method_16075(class_1255.java:136)
        at net.minecraft.class_3215$class_4212.method_16075(class_3215.java:561)
        at net.minecraft.class_3215.method_19492(class_3215.java:263)
        at net.minecraft.server.MinecraftServer.method_20415(MinecraftServer.java:852)
        at net.minecraft.server.MinecraftServer.method_16075(MinecraftServer.java:840)
        at net.minecraft.class_1255.method_18857(class_1255.java:145)
        at net.minecraft.server.MinecraftServer.method_18857(MinecraftServer.java:810)
        at net.minecraft.server.MinecraftServer.method_16208(MinecraftServer.java:815)
        at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:702)
        at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:281)
        at net.minecraft.server.MinecraftServer$$Lambda/0x00000008019bcc18.run(Unknown Source)
        at java.lang.Thread.runWith([email protected]/Thread.java:1596)
        at java.lang.Thread.run([email protected]/Thread.java:1583)
commented

Aight. Will try options if I can figure out more stuff with the suggestions, if I have the will that is. but if it is only happening for that specific situation I might just forgo that seed and put the mod back as they didn't cause any issues EVER up until.... that :(
Thanks again for clearance.

commented

If it happened once, it will happen again at some point until the cause is found and fixed.

Just tested Repurposed Structures alone and it is working fine in that seed and spot. So an incompat/bug from another mod is triggered from Repurposed Structures's stuff spawning?

commented

Disable Lithium. See if that fixes the issue. I believe it is the cause here and had reports of issues in 1.21.1

commented

Yeeeep it is Lithium

commented

Got it . I was mistaken that it might have been ferrite core when I was testing stuff. Thanks for figuring it out way better then my goofy ways. now im gonna put this mod back and continue.

commented

Lithium dev here stated how to disable the problematic code so you can re-add lithium
CaffeineMC/lithium#608 (comment)

commented

Lithium dev says this is a vanilla bug that neoforge fixes but not fabric. If so, I will see if I can port the patch to fabric

commented

Got it. This is a really entertaining goose chase type stuff here. I wonder if other issues progress and resolved similarly

commented

I created a mod that fixes the issue. https://github.com/2No2Name/bug-fixer-upper
The issue is not created by lithium if I understand it correctly, but by an issue where mob stacks that are generated cause updates too early.

commented

Gonna try this as a workaround to vanilla bug by manually adding to passenger list to avoid the game event firing
image