BluSunrize / ImmersiveEngineering

Wires, transformers, high voltage! Bzzzzt!
Other
791 stars 394 forks source link

Server crash by HV connector block (ticking) #1961

Closed Thyriel closed 7 years ago

Thyriel commented 7 years ago

Not sure how this happened as we already have a rather big network of HV/LV cables using over 20k RF/tick. We were at replacing some parts of the HV network so a single machine could get more then 16k RF/tick when the server crashed and now crashes on load too. Cables are not overloaded as the reactor cannot produce more then 24k/tick.

Crashreport: http://pastebin.com/TWurJ0Fh

IE Versions: happened at 0.56 (1.10.2) but upgrading to 0.57 didn't help either. Forge: 2239

edit: After removing IE the server loads again. The block location from the crashlog that caused the issue was strangely nowhere near where we worked on the HV cables. It was one of 6 HV connectors from the Extreme Reactor RF output that where there since some days.

BluSunrize commented 7 years ago

What machines were you outputting to?

Thyriel commented 7 years ago

Lots of Autofarms (Progressive automation mod), AE2 network, various immersive engineering machines, dozends of IE lamps (transformators connecting to LV battery and that connecting to the lamps), various Mekanism & EnderIO machines and the main source of energy usage was a tier 4 Woot mobfarm (20k/tick, Woot mod). Our whole island was spanned by a circle of HV cables that connected everything together, as well as 4 current transformators to watch usage of certain things (total input, woot usage, autofarm usage and AE2 usage)

BluSunrize commented 7 years ago

Well, from the looks of it, one of the machines you were outputting too is illegally returning null for a getCapability check. Per Forge's convention, this is not allowed and as such I won't put a needless null check there.

I'd recommend using the Forge config to remove erroring TileEntities and hope that that helps, but I don't see this to actually be an IE issue.

Thyriel commented 7 years ago

Thanks, with the info that a machine block is returning an invalid value i could reproduce the error. It's in the woot mod it seems (specificaly the proxy block that is used to extend the multiblocks RF port to multiple ports so it can get enough RF) but only when that block is wrongy placed.

Although, i tested with EnderIO conduits then and they don't even connect to the wrongy placed block that causes the issue. (and therefore don't crash) So imho the issue is on both sides, the block returning an invalid value and Immersive Engineering having no error routine so it either doesn't connect to invalid blocks or doesn't try to power them.

Ipsis commented 7 years ago

Shamefully I knew about this in 1.11, fixed it and released it. So I backported the fix to 1.10.2 then feature creep stopped me from releasing it. Whoops :( Thanks for helping out Blue.

BluSunrize commented 7 years ago

Blu, but hey, no problem. Things happen =P