Just Enough Items (JEI)

Just Enough Items (JEI)

392M Downloads

[1.16.5] Recipes stops showing after doing a Reload

iArkant opened this issue ยท 3 comments

commented

Hi, after the recent update. It seems that when doing a /reload multiple mods and recipes stops showing up on the tabs and creates a large leak on latest.log. The first load works fine.

Here is my LOG

I have to cut a lot of it because it was spamming the same error for most of the recipes of other mods and the size of the log got up to 1.3GB (i did multiple reload after), but the main part is at line #10125

[21:22:11] [Server thread/ERROR]: Caught an error from mod plugin: class vazkii.botania.client.integration.jei.JEIBotaniaPlugin botania:main
java.lang.IllegalStateException: A JEI API method is being called by another mod from the wrong thread:
Thread[Server thread,10,SERVER]
It must be called on the main thread by using Minecraft.addScheduledTask.
	at mezz.jei.util.ErrorUtil.assertMainThread(ErrorUtil.java:257) ~[jei:7.6.1.66]
	at mezz.jei.recipes.RecipeManager.hideRecipe(RecipeManager.java:297) ~[jei:7.6.1.66]
	at vazkii.botania.client.integration.jei.JEIBotaniaPlugin.onRuntimeAvailable(JEIBotaniaPlugin.java:205) ~[botania:1.16.4-411]
	at mezz.jei.startup.JeiStarter.lambda$start$1(JeiStarter.java:96) ~[jei:7.6.1.66]
	at mezz.jei.load.PluginCaller.callOnPlugins(PluginCaller.java:26) ~[jei:7.6.1.66]
	at mezz.jei.startup.JeiStarter.start(JeiStarter.java:96) ~[jei:7.6.1.66]
	at mezz.jei.startup.ClientLifecycleHandler.startJEI(ClientLifecycleHandler.java:136) ~[jei:7.6.1.66]
	at mezz.jei.startup.JeiReloadListener.onResourceManagerReload(JeiReloadListener.java:26) ~[jei:7.6.1.66]
	at net.minecraftforge.resource.ISelectiveResourceReloadListener.func_195410_a(ISelectiveResourceReloadListener.java:33) ~[forge:?]
	at net.minecraft.resources.IResourceManagerReloadListener.lambda$reload$0(IResourceManagerReloadListener.java:18) ~[?:?]
	at java.util.concurrent.CompletableFuture.uniRun(Unknown Source) ~[?:1.8.0_281]
	at java.util.concurrent.CompletableFuture$UniRun.tryFire(Unknown Source) ~[?:1.8.0_281]
	at java.util.concurrent.CompletableFuture$Completion.run(Unknown Source) ~[?:1.8.0_281]
	at net.minecraft.resources.AsyncReloader.func_219557_a(SourceFile:71) ~[?:?]
	at net.minecraft.util.concurrent.TickDelayedTask.run(SourceFile:18) ~[?:?]
	at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213166_h(ThreadTaskExecutor.java:172) ~[?:?]
	at net.minecraft.util.concurrent.RecursiveEventLoop.func_213166_h(SourceFile:23) ~[?:?]
	at net.minecraft.server.MinecraftServer.func_213166_h(MinecraftServer.java:733) ~[?:?]
	at net.minecraft.server.MinecraftServer.func_213166_h(MinecraftServer.java:159) ~[?:?]
	at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213168_p(ThreadTaskExecutor.java:134) ~[?:?]
	at net.minecraft.server.MinecraftServer.func_213205_aW(MinecraftServer.java:716) ~[?:?]
	at net.minecraft.server.MinecraftServer.func_213168_p(MinecraftServer.java:710) ~[?:?]
	at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213161_c(ThreadTaskExecutor.java:150) ~[?:?]
	at net.minecraft.server.MinecraftServer.func_240780_a_(MinecraftServer.java:1304) ~[?:?]
	at net.minecraft.command.impl.ReloadCommand.func_241062_a_(SourceFile:22) ~[?:?]
	at net.minecraft.command.impl.ReloadCommand.func_198598_a_(SourceFile:53) ~[?:?]
	at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:262) ~[brigadier-1.0.17.jar:?]
	at net.minecraft.command.Commands.func_197059_a(Commands.java:217) ~[?:?]
	at net.minecraft.network.play.ServerPlayNetHandler.func_147361_d(ServerPlayNetHandler.java:1119) ~[?:?]
	at net.minecraft.network.play.ServerPlayNetHandler.func_244548_c(ServerPlayNetHandler.java:1102) ~[?:?]
	at net.minecraft.network.play.ServerPlayNetHandler.func_147354_a(ServerPlayNetHandler.java:1081) ~[?:?]
	at net.minecraft.network.play.client.CChatMessagePacket.func_148833_a(SourceFile:36) ~[?:?]
	at net.minecraft.network.play.client.CChatMessagePacket.func_148833_a(SourceFile:9) ~[?:?]
	at net.minecraft.network.PacketThreadUtil.lambda$checkThreadAndEnqueue$0(PacketThreadUtil.java:34) ~[?:?]
	at net.minecraft.util.concurrent.TickDelayedTask.run(SourceFile:18) ~[?:?]
	at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213166_h(ThreadTaskExecutor.java:172) ~[?:?]
	at net.minecraft.util.concurrent.RecursiveEventLoop.func_213166_h(SourceFile:23) ~[?:?]
	at net.minecraft.server.MinecraftServer.func_213166_h(MinecraftServer.java:733) ~[?:?]
	at net.minecraft.server.MinecraftServer.func_213166_h(MinecraftServer.java:159) ~[?:?]
	at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213168_p(ThreadTaskExecutor.java:134) ~[?:?]
	at net.minecraft.server.MinecraftServer.func_213205_aW(MinecraftServer.java:716) ~[?:?]
	at net.minecraft.server.MinecraftServer.func_213168_p(MinecraftServer.java:710) ~[?:?]
	at net.minecraft.util.concurrent.ThreadTaskExecutor.func_213160_bf(ThreadTaskExecutor.java:115) ~[?:?]
	at net.minecraft.server.MinecraftServer.func_213202_o(MinecraftServer.java:695) ~[?:?]
	at net.minecraft.server.MinecraftServer.func_240802_v_(MinecraftServer.java:645) ~[?:?]
	at net.minecraft.server.MinecraftServer.lambda$startServer$0(MinecraftServer.java:232) ~[?:?]
	at java.lang.Thread.run(Unknown Source) [?:1.8.0_281]```
commented

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

commented

Thanks for the report!
@Alwinfy it looks like we're reloading on the Server thread instead of the main Client thread after your fix for tag syncing, can you look into this issue?

commented

We have merged a fix for this issue and it should be available on CurseForge in a few minutes. Please let us know if you run into this issue or if it's fixed for you.