View Issue Details

IDProjectCategoryView StatusLast Update
0001794Industrial-Craft²nuclear reactor and anything associatedpublic2016-04-03 23:18
Reporterakrieger Assigned To 
PriorityhighSeveritycrashReproducibilityalways
Status newResolutionopen 
Product VersionBuilds for MC 1.7.10 
Summary0001794: Liquid Heat Exchanger crash if pipe changes from input to output
DescriptionUsing the most recent release, MC 1.7.10, Minecraft Forge 10.13.4.1558, IC2 experimental, BC 7.1.14, Additional Pipes (http://www.mod-buildcraft.com/forums/showthread.php?tid=1467), and other unrelated mods (forestry, power converters which I forgot to remove), I managed to totally break my singleplayer game. I was fiddling around in creative mode with teleport pipes, with the new IC2 nuclear reactors and their hot/cold coolant system. I had setup the following things. All of these pipes are teleport pipes. The tl;dr for them is that they can send, receive, or both, and have a 'channel' set where all pipes on a channel are considered 'connected.' 0 is the default channel.

Nuclear reactor, with connected output pipes on channel 1. The pipes were set to send only. The pipe blocks had ejectors.
The same nuclear reactor, with connected input pipes on channel 0. They are supposed to receive Coolant. No ejectors on these pipes.

Liquid Heat Exchanger, with a connected input pipe (receive mode) on channel 1, and an output pipe on channel 0. Working fine.

Then, I added another Liquid Heat Exchanger. I added two teleport pipes to it. I right clicked on one, set it to receive mode (still on channel 0 - this would've theoretically caused it to accept regular coolant from the first exchanger). Then I hit the +1 button to put it to channel 1, and the game instantly crashed with the below crash log.

I'm not sure what exactly occurred, but it seems like the LHE 'caches' what it's inputs or outputs are, so when I flipped the teleport pipe to 'receive' hot coolant, it took some, the LHE processed it, and tried to emit cold coolant back out. This promptly crashed because there is only one output pipe now and it tried to send regular coolant to both.

After this crash, I can't load the world at all. I get a different crash now, it is below.

```
---- Minecraft Crash Report ----
// Quite honestly, I wouldn't worry myself about that.

Time: 1/4/16 4:21 PM
Description: Ticking block entity

java.lang.IllegalStateException: The fluid handler buildcraft.transport.TileGenericPipe@46a456a3 filled inconsistently. Expected 5, got 0.
    at ic2.core.util.LiquidUtil.transfer(LiquidUtil.java:194)
    at ic2.core.util.LiquidUtil.distributeAll(LiquidUtil.java:158)
    at ic2.core.item.ItemUpgradeModule.onTick(ItemUpgradeModule.java:407)
    at ic2.core.block.machine.tileentity.TileEntityLiquidHeatExchanger.updateEntityServer(TileEntityLiquidHeatExchanger.java:176)
    at ic2.core.block.TileEntityBlock.func_145845_h(TileEntityBlock.java:189)
    at net.minecraft.world.World.func_72939_s(World.java:1939)
    at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:489)
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:636)
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547)
    at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:186)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427)
    at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Stacktrace:
    at ic2.core.util.LiquidUtil.transfer(LiquidUtil.java:194)
    at ic2.core.util.LiquidUtil.distributeAll(LiquidUtil.java:158)
    at ic2.core.item.ItemUpgradeModule.onTick(ItemUpgradeModule.java:407)
    at ic2.core.block.machine.tileentity.TileEntityLiquidHeatExchanger.updateEntityServer(TileEntityLiquidHeatExchanger.java:176)
    at ic2.core.block.TileEntityBlock.func_145845_h(TileEntityBlock.java:189)

-- Block entity being ticked --
Details:
    Name: Liquid Heat Exchanger // ic2.core.block.machine.tileentity.TileEntityLiquidHeatExchanger
    Block type: ID 0000233 (blockMachine2 // ic2.core.block.machine.BlockMachine2)
    Block data value: 12 / 0xC / 0b1100
    Block location: World: (-248,82,220), Chunk: (at 8,5,12 in -16,13; contains blocks -256,0,208 to -241,255,223), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
    Actual block type: ID 0000233 (blockMachine2 // ic2.core.block.machine.BlockMachine2)
    Actual block data value: 12 / 0xC / 0b1100
Stacktrace:
    at net.minecraft.world.World.func_72939_s(World.java:1939)
    at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:489)

-- Affected level --
Details:
    Level name: creat
    All players: 1 total; [EntityPlayerMP['<redacted>'/88, l='creat', x=-248.30, y=82.75, z=218.55]]
    Chunk stats: ServerChunkCache: 2401 Drop: 0
    Level seed: 5584919440884590954
    Level generator: ID 00 - default, ver 1. Features enabled: true
    Level generator options:
    Level spawn location: World: (-220,64,252), Chunk: (at 4,4,12 in -14,15; contains blocks -224,0,240 to -209,255,255), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
    Level time: 67130 game time, 16696 day time
    Level dimension: 0
    Level storage version: 0x04ABD - Anvil
    Level weather: Rain time: 138932 (now: false), thunder time: 67126 (now: false)
    Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: true
Stacktrace:
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:636)
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:547)
    at net.minecraft.server.integrated.IntegratedServer.func_71217_p(IntegratedServer.java:186)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:427)
    at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)

-- System Details --
Details:
    Minecraft Version: 1.7.10
    Operating System: Mac OS X (x86_64) version 10.11.2
    Java Version: 1.8.0_60, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 1508626288 bytes (1438 MB) / 2134114304 bytes (2035 MB) up to 2134114304 bytes (2035 MB)
    JVM Flags: 6 total; -Xmx2G -Xms2G -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M
    AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
    IntCache: cache: 0, tcache: 0, allocated: 12, tallocated: 96
    FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1558 Optifine OptiFine_1.7.10_HD_U_C1 16 mods loaded, 16 mods active
    States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
    UCHIJAAAA mcp{9.05} [Minecraft Coder Pack] (minecraft.jar)
    UCHIJAAAA FML{7.10.99.99} [Forge Mod Loader] (forge-1.7.10-10.13.4.1558-1.7.10.jar)
    UCHIJAAAA Forge{10.13.4.1558} [Minecraft Forge] (forge-1.7.10-10.13.4.1558-1.7.10.jar)
    UCHIJAAAA CodeChickenCore{1.0.4.29} [CodeChicken Core] (minecraft.jar)
    UCHIJAAAA NotEnoughItems{1.0.3.74} [Not Enough Items] (NotEnoughItems-1.7.10-1.0.3.74-universal.jar)
    UCHIJAAAA BuildCraft|Core{7.1.14} [BuildCraft] (buildcraft-7.1.14.jar)
    UCHIJAAAA BuildCraft|Transport{7.1.14} [BC Transport] (buildcraft-7.1.14.jar)
    UCHIJAAAA BuildCraft|Silicon{7.1.14} [BC Silicon] (buildcraft-7.1.14.jar)
    UCHIJAAAA BuildCraft|Factory{7.1.14} [BC Factory] (buildcraft-7.1.14.jar)
    UCHIJAAAA additionalpipes{4.7.0} [Additional Pipes] (additionalpipes-4.7.1.jar)
    UCHIJAAAA BuildCraft|Builders{7.1.14} [BC Builders] (buildcraft-7.1.14.jar)
    UCHIJAAAA BuildCraft|Energy{7.1.14} [BC Energy] (buildcraft-7.1.14.jar)
    UCHIJAAAA BuildCraft|Robotics{7.1.14} [BC Robotics] (buildcraft-7.1.14.jar)
    UCHIJAAAA IC2{2.2.805-experimental} [IndustrialCraft 2] (industrialcraft-2-2.2.805-experimental.jar)
    UCHIJAAAA Forestry{4.2.1.48} [Forestry for Minecraft] (forestry_1.7.10-4.2.1.48.jar)
    UCHIJAAAA PowerConverters{1.7.10_3.3.0-jenkins.76} [Power Converters] (PowerConverters-1.7.10_3.3.0-jenkins.76.jar)
    GL info: ~~ERROR~~ RuntimeException: No OpenGL context found in the current thread.
    Forestry : Warning: You have mods that change the behavior of Minecraft, ForgeModLoader, and/or Minecraft Forge to your client:
Optifine
These may have caused this error, and may not be supported. Try reproducing the crash WITHOUT these mods, and report it then.
    Profiler Position: N/A (disabled)
    Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
    Player Count: 1 / 8; [EntityPlayerMP['<redacted>'/88, l='creat', x=-248.30, y=82.75, z=218.55]]
    Type: Integrated Server (map_client.txt)
    Is Modded: Definitely; Client brand changed to 'fml,forge'
```

Crash when reloading the world:

```
---- Minecraft Crash Report ----
// Quite honestly, I wouldn't worry myself about that.

Time: 1/4/16 4:22 PM
Description: Unexpected error

java.lang.RuntimeException: Cannot Hotload Dim: Overworld is not Loaded!
    at net.minecraftforge.common.DimensionManager.initDimension(DimensionManager.java:230)
    at net.minecraft.server.MinecraftServer.func_71218_a(MinecraftServer.java:705)
    at Config.getWorldServer(Config.java:1746)
    at RandomMobs.entityLoaded(RandomMobs.java:49)
    at net.minecraft.client.renderer.RenderGlobal.func_72703_a(RenderGlobal.java:2903)
    at net.minecraft.world.World.func_72923_a(World.java:1347)
    at net.minecraft.client.multiplayer.WorldClient.func_72923_a(WorldClient.java:182)
    at net.minecraft.world.World.func_72838_d(World.java:1338)
    at net.minecraft.client.multiplayer.WorldClient.func_72838_d(WorldClient.java:159)
    at net.minecraft.client.multiplayer.WorldClient.func_73027_a(WorldClient.java:226)
    at net.minecraft.client.network.NetHandlerPlayClient.func_147281_a(NetHandlerPlayClient.java:771)
    at net.minecraft.network.play.server.S0FPacketSpawnMob.func_148833_a(SourceFile:97)
    at net.minecraft.network.play.server.S0FPacketSpawnMob.func_148833_a(SourceFile:15)
    at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:212)
    at net.minecraft.client.multiplayer.PlayerControllerMP.func_78765_e(PlayerControllerMP.java:273)
    at net.minecraft.client.Minecraft.func_71407_l(Minecraft.java:1602)
    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(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)


A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- Head --
Stacktrace:
    at net.minecraftforge.common.DimensionManager.initDimension(DimensionManager.java:230)
    at net.minecraft.server.MinecraftServer.func_71218_a(MinecraftServer.java:705)
    at Config.getWorldServer(Config.java:1746)
    at RandomMobs.entityLoaded(RandomMobs.java:49)
    at net.minecraft.client.renderer.RenderGlobal.func_72703_a(RenderGlobal.java:2903)
    at net.minecraft.world.World.func_72923_a(World.java:1347)
    at net.minecraft.client.multiplayer.WorldClient.func_72923_a(WorldClient.java:182)
    at net.minecraft.world.World.func_72838_d(World.java:1338)
    at net.minecraft.client.multiplayer.WorldClient.func_72838_d(WorldClient.java:159)
    at net.minecraft.client.multiplayer.WorldClient.func_73027_a(WorldClient.java:226)
    at net.minecraft.client.network.NetHandlerPlayClient.func_147281_a(NetHandlerPlayClient.java:771)
    at net.minecraft.network.play.server.S0FPacketSpawnMob.func_148833_a(SourceFile:97)
    at net.minecraft.network.play.server.S0FPacketSpawnMob.func_148833_a(SourceFile:15)
    at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:212)
    at net.minecraft.client.multiplayer.PlayerControllerMP.func_78765_e(PlayerControllerMP.java:273)

-- Affected level --
Details:
    Level name: MpServer
    All players: 1 total; [EntityClientPlayerMP['<redacted>'/83, l='MpServer', x=-248.30, y=84.37, z=218.55]]
    Chunk stats: MultiplayerChunkCache: 9, 14
    Level seed: 0
    Level generator: ID 00 - default, ver 1. Features enabled: false
    Level generator options:
    Level spawn location: World: (-220,64,252), Chunk: (at 4,4,12 in -14,15; contains blocks -224,0,240 to -209,255,255), Region: (-1,0; contains chunks -32,0 to -1,31, blocks -512,0,0 to -1,255,511)
    Level time: 67136 game time, 16702 day time
    Level dimension: 0
    Level storage version: 0x00000 - Unknown?
    Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)
    Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false
    Forced entities: 2 total; [EntityClientPlayerMP['<redacted>'/83, l='MpServer', x=-248.30, y=84.37, z=218.55], EntityBat['Bat'/62, l='MpServer', x=-225.50, y=59.00, z=219.38]]
    Retry entities: 0 total; []
    Server brand: fml,forge
    Server type: Integrated singleplayer server
Stacktrace:
    at net.minecraft.client.multiplayer.WorldClient.func_72914_a(WorldClient.java:373)
    at net.minecraft.client.Minecraft.func_71396_d(Minecraft.java:2444)
    at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:927)
    at net.minecraft.client.main.Main.main(SourceFile:148)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:497)
    at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
    at net.minecraft.launchwrapper.Launch.main(Launch.java:28)

-- System Details --
Details:
    Minecraft Version: 1.7.10
    Operating System: Mac OS X (x86_64) version 10.11.2
    Java Version: 1.8.0_60, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode), Oracle Corporation
    Memory: 1704162912 bytes (1625 MB) / 2134114304 bytes (2035 MB) up to 2134114304 bytes (2035 MB)
    JVM Flags: 6 total; -Xmx2G -Xms2G -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:-UseAdaptiveSizePolicy -Xmn128M
    AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
    IntCache: cache: 0, tcache: 0, allocated: 12, tallocated: 96
    FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1558 Optifine OptiFine_1.7.10_HD_U_C1 16 mods loaded, 16 mods active
    States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
    UCHIJAAAAA mcp{9.05} [Minecraft Coder Pack] (minecraft.jar)
    UCHIJAAAAA FML{7.10.99.99} [Forge Mod Loader] (forge-1.7.10-10.13.4.1558-1.7.10.jar)
    UCHIJAAAAA Forge{10.13.4.1558} [Minecraft Forge] (forge-1.7.10-10.13.4.1558-1.7.10.jar)
    UCHIJAAAAA CodeChickenCore{1.0.4.29} [CodeChicken Core] (minecraft.jar)
    UCHIJAAAAA NotEnoughItems{1.0.3.74} [Not Enough Items] (NotEnoughItems-1.7.10-1.0.3.74-universal.jar)
    UCHIJAAAAA BuildCraft|Core{7.1.14} [BuildCraft] (buildcraft-7.1.14.jar)
    UCHIJAAAAA BuildCraft|Transport{7.1.14} [BC Transport] (buildcraft-7.1.14.jar)
    UCHIJAAAAA BuildCraft|Silicon{7.1.14} [BC Silicon] (buildcraft-7.1.14.jar)
    UCHIJAAAAA BuildCraft|Factory{7.1.14} [BC Factory] (buildcraft-7.1.14.jar)
    UCHIJAAAAA additionalpipes{4.7.0} [Additional Pipes] (additionalpipes-4.7.1.jar)
    UCHIJAAAAA BuildCraft|Builders{7.1.14} [BC Builders] (buildcraft-7.1.14.jar)
    UCHIJAAAAA BuildCraft|Energy{7.1.14} [BC Energy] (buildcraft-7.1.14.jar)
    UCHIJAAAAA BuildCraft|Robotics{7.1.14} [BC Robotics] (buildcraft-7.1.14.jar)
    UCHIJAAAAA IC2{2.2.805-experimental} [IndustrialCraft 2] (industrialcraft-2-2.2.805-experimental.jar)
    UCHIJAAAAA Forestry{4.2.1.48} [Forestry for Minecraft] (forestry_1.7.10-4.2.1.48.jar)
    UCHIJAAAAA PowerConverters{1.7.10_3.3.0-jenkins.76} [Power Converters] (PowerConverters-1.7.10_3.3.0-jenkins.76.jar)
    GL info: ' Vendor: 'Intel Inc.' Version: '2.1 INTEL-10.12.13' Renderer: 'Intel Iris Pro OpenGL Engine'
    Forestry : Warning: You have mods that change the behavior of Minecraft, ForgeModLoader, and/or Minecraft Forge to your client:
Optifine
These may have caused this error, and may not be supported. Try reproducing the crash WITHOUT these mods, and report it then.
    Launched Version: 1.7.10-Forge10.13.4.1558-1.7.10
    LWJGL: 2.9.1
    OpenGL: Intel Iris Pro OpenGL Engine GL version 2.1 INTEL-10.12.13, Intel Inc.
    GL Caps: Using GL 1.3 multitexturing.
Using framebuffer objects because ARB_framebuffer_object is supported and separate blending is supported.
Anisotropic filtering is supported and maximum anisotropy is 16.
Shaders are available because OpenGL 2.1 is supported.

    Is Modded: Definitely; Client brand changed to 'fml,forge'
    Type: Client (map_client.txt)
    Resource Packs: []
    Current Language: English (US)
    Profiler Position: N/A (disabled)
    Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
    Anisotropic Filtering: On (16)
```
Steps To ReproduceBasic 5x5 nuclear reactor, with coolant already inside, with connected output teleport pipes on channel 1. The pipes were set to send only. The pipe blocks had ejectors.
The same nuclear reactor, with connected input pipes on channel 0. They are supposed to receive Coolant, receive only. No ejectors on these pipes.

Liquid Heat Exchanger, with a connected input pipe (receive mode) on channel 1, and an output pipe on channel 0. Add a stirling generator and MFSU if you want.

Start the reactor. See that the system runs and generates EU. Probably good to generate more Coolant than the single LHE can handle.

Add another LHE with ejector upgrade. Add the generator and mfsu if desired. Add two teleport pipes, just by placing. Select one of the pipes. Right click it, *first* set to 'receive only', *then* click +1 to set to channel 1. Game should crash.
TagsNo tags attached.
Minecraft Version

Activities

akrieger

2016-01-05 00:58

reporter   ~0004341

Also, since I forgot to put it in the title, this permanently breaks the world and makes it unable to be loaded again.

akrieger

2016-01-05 01:12

reporter  

crash_repro2.zip (4,973,526 bytes)

akrieger

2016-01-05 01:13

reporter   ~0004343

Last edited: 2016-01-05 01:47

Attached the world reproing the crash. Apparently this one is not permanently broken. Should just need to install the same mods (BC, IC2, Forestry, Additional Pipes) and load it up to repro.

akrieger

2016-01-05 01:15

reporter   ~0004344

Sorry, IC2 2.2.805-experimental, BC 7.1.14, Forestry 4.2.1.48, Additional Pipes 4.7.0, and NEI whatever. Repro'd without PowerConverters installed.

akrieger

2016-01-05 01:45

reporter   ~0004345

Seemed to be a dupe of 0001780 but that one doesn't have repro steps.

akrieger

2016-01-05 17:20

reporter   ~0004350

I got the bug title backwards, the pipe changed from output to *input* which caused the crash. But I don't see how to edit it now.

akrieger

2016-01-26 03:48

reporter   ~0004359

Bump? Would love to not accidentally destroy my world, would also love to use these mods together. I'm afraid of what might happen if a regular pipe somehow changes to accidentally have a different fluid in it than the ejector is expecting...

joe321

2016-04-03 20:57

reporter   ~0004413

Hi, I just encounter the same problem.
After upgrade to the newest BC and IC2 version, the game still crashed.
I don't know how to fix the bug, but I find the way to remove the problematic block.
These two sites may help you if you just want to play the game.

https://stickypiston.co/account/knowledgebase.php?action=displayarticle&id=86
https://www.youtube.com/watch?v=fWUUsdp3pJ8

Issue History

Date Modified Username Field Change
2016-01-05 00:55 akrieger New Issue
2016-01-05 00:58 akrieger Note Added: 0004341
2016-01-05 01:12 akrieger File Added: crash_repro2.zip
2016-01-05 01:13 akrieger Note Added: 0004343
2016-01-05 01:15 akrieger Note Added: 0004344
2016-01-05 01:45 akrieger Note Added: 0004345
2016-01-05 01:47 akrieger Note Edited: 0004343
2016-01-05 17:20 akrieger Note Added: 0004350
2016-01-26 03:48 akrieger Note Added: 0004359
2016-04-03 20:57 joe321 Note Added: 0004413
2016-04-03 23:18 Player Priority normal => high
2016-04-03 23:18 Player Product Version => Builds for MC 1.7.10