Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: A crash from Easy Anvils and Inventory Tabs in a lage modpack. #59

Open
ghost opened this issue Aug 2, 2024 · 2 comments
Open
Labels
has workaround A configuration workaround exists for this issue incompatibility another mod is rudely breaking inventory tabs

Comments

@ghost
Copy link

ghost commented Aug 2, 2024

Minecraft Version: 1.21
Mod Loader: Fabric 0.16
Mod versions: Easy Anvils (21.0.2), Inventory Tabs (1.3.3)

When trying to load a world with both mods installed in a large modpack I'm playing, it prevents the player from entering said world due to "corrupt data". The player also is unable to create a new world as it just crashes the game.

After some investigation, it turns out, it is seemingly due to inventory tabs:

-- Head --
Thread: Render thread
Stacktrace:
	at java.base/java.util.HashMap$HashIterator.nextNode(HashMap.java:1605)
	at java.base/java.util.HashMap$EntryIterator.next(HashMap.java:1638)
	at java.base/java.util.HashMap$EntryIterator.next(HashMap.java:1636)
	at com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator.next(AbstractMapBasedMultimap.java:1479)
	at com.google.common.collect.AbstractMapBasedMultimap$AsMap$AsMapIterator.next(AbstractMapBasedMultimap.java:1468)
	at java.base/java.util.Map.forEach(Map.java:723)
	at com.google.common.collect.Maps$Values.forEach(Maps.java:4223)
	at folk.sisby.inventory_tabs.TabProviders.reloadRegistryProviders(TabProviders.java:175)
	at folk.sisby.inventory_tabs.TabProviders.reload(TabProviders.java:84)
	at folk.sisby.inventory_tabs.InventoryTabs.lambda$onInitializeClient$0(InventoryTabs.java:29)
	at net.fabricmc.fabric.api.event.lifecycle.v1.CommonLifecycleEvents.lambda$static$0(CommonLifecycleEvents.java:33)
	at net.minecraft.class_5350.handler$cfi000$fabric-lifecycle-events-v1$hookRefresh(class_5350.java:539)
	at net.minecraft.class_5350.method_40421(class_5350.java:94)
	at net.minecraft.class_7237.method_42097(class_7237.java:52)
	at java.base/java.util.concurrent.CompletableFuture$UniApply.tryFire(CompletableFuture.java:646)
	at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482)
	at net.minecraft.class_1255.method_18859(class_1255.java:162)
	at net.minecraft.class_4093.method_18859(class_4093.java:23)
	at net.minecraft.class_1255.method_16075(class_1255.java:136)
	at net.minecraft.class_1255.method_18857(class_1255.java:145)
	at net.minecraft.class_310.method_18857(class_310.java:22678)
	at net.minecraft.class_525.method_31130(class_525.java:329)
	at net.minecraft.class_526.method_19944(class_526.java:54)
	at net.minecraft.class_4185.method_25306(class_4185.java:96)
	at net.minecraft.class_4264.method_25348(class_4264.java:48)
	at net.minecraft.class_339.method_25402(class_339.java:141)
	at net.minecraft.class_4069.method_25402(class_4069.java:38)
	at net.minecraft.class_312.method_1611(class_312.java:107)
	at net.minecraft.class_437.method_25412(class_437.java:431)
	at net.minecraft.class_312.method_1601(class_312.java:107)
	at net.minecraft.class_312.method_22686(class_312.java:196)
	at net.minecraft.class_1255.execute(class_1255.java:108)
	at net.minecraft.class_312.method_22684(class_312.java:196)
	at org.lwjgl.glfw.GLFWMouseButtonCallbackI.callback(GLFWMouseButtonCallbackI.java:43)
	at org.lwjgl.system.JNI.invokeV(Native Method)
	at org.lwjgl.glfw.GLFW.glfwWaitEventsTimeout(GLFW.java:3509)

After removing either Easy Anvils or Inventory Tabs from the modpack, the player is able to load any existing worlds or create new worlds. Judging from my investigation, it seems that Inventory Tabs is the main cause of the problem, but I could be wrong, given that it is in a large modpack.

I've submitted this crash to Fuzs, the mod author of Easy Anvils, as well. I am submitting it to here as well, in hopes of solving this issue more quickly.

Crash log: https://pastebin.com/x3gwFZEb

@sisby-folk
Copy link
Owner

That's a CME on a non-concurrent hash map apparently on this line? https://github.com/sisby-folk/inventory-tabs/blob/1.20/src/main/java/folk/sisby/inventory_tabs/TabProviders.java#L175

does this still happen if you turn configlogging off in the config?

@ghost
Copy link
Author

ghost commented Aug 3, 2024

does this still happen if you turn configlogging off in the config?

image

To my surprise, it doesn't crash once configlogging is off. I'm able to create new worlds and load them just fine.

@sisby-folk sisby-folk added has workaround A configuration workaround exists for this issue incompatibility another mod is rudely breaking inventory tabs labels Aug 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
has workaround A configuration workaround exists for this issue incompatibility another mod is rudely breaking inventory tabs
Projects
None yet
Development

No branches or pull requests

1 participant