If i was to fast search in nei always the same error happend
Dream-Master opened this issue · 8 comments
[19:53:14] [Client thread/DEBUG] [NotEnoughItems/]: Searching for splicer
[19:53:17] [Client thread/INFO] [NotEnoughItems/]: FindFuels took 55.64 ms
[19:53:18] [Client thread/INFO] [STDERR/]: [java.lang.Throwable$WrappedPrintStream:println:-1]: java.util.concurrent.ExecutionException: java.lang.NullPointerException
[19:53:18] [Client thread/INFO] [STDERR/]: [java.lang.Throwable$WrappedPrintStream:println:-1]: at java.util.concurrent.ForkJoinTask.get(Unknown Source)
[19:53:18] [Client thread/INFO] [STDERR/]: [java.lang.Throwable$WrappedPrintStream:println:-1]: at codechicken.nei.recipe.GuiUsageRecipe.openRecipeGui(GuiUsageRecipe.java:30)
mitchej123 — Today at 8:14 PM
interesting
make an issue on the NEI repo
might put a guard in to prevent searching until things have settled
can have the shit put a shitFinalized = True when it's ready to search
@Prometheus0000 i use the newest nei version on jenkins (11) it happend in my dev version. I chat with mitch allready just a reminder issue for him.
@Prometheus0000 where you get version 12 from. Is there a newer version ?
http://jenkins.usrv.eu:8080/job/NEI/34/
guess this is the version i used
I had a similar issue before and mitch previously said it should be fixed in newer versions. I guess it's still there, or it's a new one.
complete stack trace
java.util.concurrent.ExecutionException: java.lang.NullPointerException at java.util.concurrent.ForkJoinTask.get(Unknown Source) at codechicken.nei.recipe.GuiUsageRecipe.openRecipeGui(GuiUsageRecipe.java:30) at codechicken.nei.recipe.RecipeItemInputHandler.lastKeyTyped(RecipeItemInputHandler.java:21) at codechicken.nei.guihook.GuiContainerManager.lastKeyTyped(GuiContainerManager.java:310) at net.minecraft.client.gui.inventory.GuiContainer.func_73869_a(GuiContainer.java) at net.minecraft.client.gui.inventory.GuiContainer.public_func_73869_a(GuiContainer.java) at codechicken.nei.guihook.GuiContainerManager.callKeyTyped(GuiContainerManager.java) at codechicken.nei.guihook.GuiContainerManager.keyTyped(GuiContainerManager.java:484) at codechicken.nei.guihook.GuiContainerManager.handleKeyboardInput(GuiContainerManager.java:469) at net.minecraft.client.gui.inventory.GuiContainer.func_146282_l(GuiContainer.java) at net.minecraft.client.gui.GuiScreen.func_146269_k(GuiScreen.java:276) at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:1640) at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:973) at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:898) at net.minecraft.client.main.Main.main(SourceFile:148) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) at net.minecraft.launchwrapper.Launch.main(Launch.java:28) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.multimc.onesix.OneSixLauncher.launchWithMainClass(OneSixLauncher.java:196) at org.multimc.onesix.OneSixLauncher.launch(OneSixLauncher.java:231) at org.multimc.EntryPoint.listen(EntryPoint.java:143) at org.multimc.EntryPoint.main(EntryPoint.java:34) Caused by: java.lang.NullPointerException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at java.util.concurrent.ForkJoinTask.getThrowableException(Unknown Source) ... 29 more Caused by: java.lang.NullPointerException at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at java.util.concurrent.ForkJoinTask.getThrowableException(Unknown Source) at java.util.concurrent.ForkJoinTask.reportException(Unknown Source) at java.util.concurrent.ForkJoinTask.invoke(Unknown Source) at java.util.stream.ReduceOps$ReduceOp.evaluateParallel(Unknown Source) at java.util.stream.AbstractPipeline.evaluate(Unknown Source) at java.util.stream.ReferencePipeline.collect(Unknown Source) at codechicken.nei.recipe.GuiUsageRecipe.lambda$openRecipeGui$2(GuiUsageRecipe.java:30) at java.util.concurrent.ForkJoinTask$AdaptedCallable.exec(Unknown Source) at java.util.concurrent.ForkJoinTask.doExec(Unknown Source) at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(Unknown Source) at java.util.concurrent.ForkJoinPool.runWorker(Unknown Source) at java.util.concurrent.ForkJoinWorkerThread.run(Unknown Source) Caused by: java.lang.NullPointerException at WayofTime.alchemicalWizardry.client.nei.NEIBloodOrbShapedHandler$CachedBloodOrbRecipe.setIngredients(NEIBloodOrbShapedHandler.java:48) at codechicken.nei.recipe.ShapedRecipeHandler$CachedShapedRecipe.(ShapedRecipeHandler.java:35) at WayofTime.alchemicalWizardry.client.nei.NEIBloodOrbShapedHandler$CachedBloodOrbRecipe.(NEIBloodOrbShapedHandler.java:30) at WayofTime.alchemicalWizardry.client.nei.NEIBloodOrbShapedHandler.forgeShapedRecipe(NEIBloodOrbShapedHandler.java:133) at WayofTime.alchemicalWizardry.client.nei.NEIBloodOrbShapedHandler.loadUsageRecipes(NEIBloodOrbShapedHandler.java:102) at codechicken.nei.recipe.TemplateRecipeHandler.loadUsageRecipes(TemplateRecipeHandler.java:436) at codechicken.nei.recipe.TemplateRecipeHandler.getUsageHandler(TemplateRecipeHandler.java:561) at codechicken.nei.recipe.GuiUsageRecipe.lambda$null$0(GuiUsageRecipe.java:28) at java.util.stream.ReferencePipeline$3$1.accept(Unknown Source) at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(Unknown Source) at java.util.stream.AbstractPipeline.copyInto(Unknown Source) at java.util.stream.AbstractPipeline.wrapAndCopyInto(Unknown Source) at java.util.stream.ReduceOps$ReduceTask.doLeaf(Unknown Source) at java.util.stream.ReduceOps$ReduceTask.doLeaf(Unknown Source) at java.util.stream.AbstractTask.compute(Unknown Source) at java.util.concurrent.CountedCompleter.exec(Unknown Source) at java.util.concurrent.ForkJoinTask.doExec(Unknown Source) at java.util.concurrent.ForkJoinPool$WorkQueue.execLocalTasks(Unknown Source) ... 3 more
WayofTime.alchemicalWizardry.client.nei.NEIConfig#bloodOrbs
is a shared cache for all bloodOrbs, which is not protected against concurrent initialization. Needs an NEI centric fix so that it'll work on other packs. It's an array list so we can't swap it out with another container...
It looks like the NEIAlchemyRecipeHandler
handler instantiates the bloodOrbs, we'll need to run newInstance on that outside of the parallel instantiations of the other handlers.