McJtyMods / XNet

Advanced item/liquid/energy/... networking
MIT License
94 stars 53 forks source link

blusunrize.immersiveengineering.common.blocks.metal.FluidPipeTileEntity$PipeFluidHandler misbehaved! #453

Closed fnurgel closed 3 years ago

fnurgel commented 3 years ago

Issue description: I had an xnet connector connected to Immersive engineering pipe which in turn was connected to an immersive engineering water pump. This was working ok and xnet was pulling water from it fine. Then I wanted to move the pump so I first removed it (no issue) but when I placed it down again (now connected to the pipes but on a different place xnet crashed the server with:

minecraft-atm6    | [19:48:49] [Server thread/FATAL] [ne.mi.co.ForgeMod/]: Preparing crash report with UUID d7114910-fd15-4858-8838-0d2dda9f32cd
minecraft-atm6    | [19:48:49] [Server thread/ERROR] [minecraft/MinecraftServer]: Encountered an unexpected exception
minecraft-atm6    | net.minecraft.crash.ReportedException: Ticking block entity
minecraft-atm6    |     at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:854) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:byg.mixins.json:server.MixinMinecraftServer,pl:mixin:APP:jaopca.mixins.json:MinecraftServerMixin,pl:mixin:A,pl:runtimedistcleaner:A}
minecraft-atm6    |     at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:291) ~[?:?] {re:classloading,pl:accesstransformer:B}
minecraft-atm6    |     at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:786) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:byg.mixins.json:server.MixinMinecraftServer,pl:mixin:APP:jaopca.mixins.json:MinecraftServerMixin,pl:mixin:A,pl:runtimedistcleaner:A}
minecraft-atm6    |     at net.minecraft.server.MinecraftServer.func_240802_v_(MinecraftServer.java:641) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:byg.mixins.json:server.MixinMinecraftServer,pl:mixin:APP:jaopca.mixins.json:MinecraftServerMixin,pl:mixin:A,pl:runtimedistcleaner:A}
minecraft-atm6    |     at net.minecraft.server.MinecraftServer.lambda$startServer$0(MinecraftServer.java:232) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:byg.mixins.json:server.MixinMinecraftServer,pl:mixin:APP:jaopca.mixins.json:MinecraftServerMixin,pl:mixin:A,pl:runtimedistcleaner:A}
minecraft-atm6    |     at java.lang.Thread.run(Thread.java:748) [?:1.8.0_212] {}
minecraft-atm6    | Caused by: java.lang.NullPointerException: blusunrize.immersiveengineering.common.blocks.metal.FluidPipeTileEntity$PipeFluidHandler misbehaved! handler.drain(50, true) returned null, even though handler.drain(50, false) did not
minecraft-atm6    |     at mcjty.xnet.apiimpl.fluids.FluidChannelSettings.tick(FluidChannelSettings.java:157) ~[xnet:1.16-3.0.9] {re:classloading}
minecraft-atm6    |     at mcjty.xnet.modules.controller.blocks.TileEntityController.func_73660_a(TileEntityController.java:302) ~[xnet:1.16-3.0.9] {re:classloading}
minecraft-atm6    |     at net.minecraft.world.World.func_217391_K(World.java:491) ~[?:?] {re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:observerlib:coremodmethod,xf:fml:astralsorcery:sun_brightness_server,pl:runtimedistcleaner:A}
minecraft-atm6    |     at net.minecraft.world.server.ServerWorld.func_72835_b(ServerWorld.java:371) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,xf:fml:immersiveengineering:IE block update callback,pl:mixin:APP:quark.mixins.json:ServerWorldMixin,pl:mixin:A,pl:runtimedistcleaner:A}
minecraft-atm6    |     at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:850) ~[?:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:byg.mixins.json:server.MixinMinecraftServer,pl:mixin:APP:jaopca.mixins.json:MinecraftServerMixin,pl:mixin:A,pl:runtimedistcleaner:A}
minecraft-atm6    |     ... 5 more

It now crashed on every restart so I had to pull out a backup to be able to start it up again. Maybe the fluid pipe didn't behave correctly, but bricking the server because of it was a bit harsh I think.

Steps to reproduce: (see above)

Versions:

Possibly incompatible mods and versions:

Relevant logs, if any:

sunshinehunter commented 3 years ago

This is now fixed in Immersive Engineering, see my issue here.

fnurgel commented 3 years ago

thanks!