Refined Storage

Refined Storage

115M Downloads

Incompatibility with Hyperbox mod

Appulcake opened this issue ยท 4 comments

commented

Describe the bug

When trying to shut down a server, it gets stuck in a loop of Failed to save chunk on 2 chunks, referring to an issue with refinedstorage. The only way to shut it down is to kill the server process at which point the 2 chunks won't be saved, and I'm worried of this spreading later to other chunks too.

I've included the part in the log that gets repeated over and over, forever. The full log file is tens of GBs in size because of this spam before I caught it. This happens every time the server is shut down, even if I start it and immediately after it's done shut it down before any players joined.

How could I diagnose what/where the issue even is, what block/entity is possibly causing this, and why so I can know maybe how to prevent this from happening?

Edit: Quick additional info about the 2 chunks that seem to have an issue. It lists chunk [12, 1] which is the chunk in our base that has most of the RS modules (like disk drives and interfaces with all storage, crafting grids, autocrafter). However, the other chunk mentioned [0, 0] doesn't have any blocks put down or mined by us, so not sure why it also pops up with various RS related issues as RS hasn't been present there. I've also tried to delete chunk 0, 0 and regenerate it on next startup, then shut down, and it doesn't change anything, that chunk is still listed in the issues of it unable to save.

How can we reproduce this bug or crash?

We have no idea when this started happening, as it's not common to shut down a dedicated server. We started the playthrough couple days ago and have a basic power and RS setup going at this point.

What Minecraft version is this happening on?

Minecraft 1.21.1

What NeoForge or Fabric version is this happening on?

21.1.145

What Refined Storage version is this happening on?

2.0.0-beta.2

Relevant log output

[29Apr2025 12:30:59.460] [Server thread/ERROR] [net.minecraft.server.level.ChunkMap/]: Failed to save chunk [12, 1]
java.util.concurrent.CompletionException: java.lang.IllegalArgumentException: The removed container should be present in the removed entries, but isn't
	at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:315) ~[?:?]
	at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:320) ~[?:?]
	at java.base/java.util.concurrent.CompletableFuture$UniRun.tryFire(CompletableFuture.java:791) ~[?:?]
	at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482) ~[?:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.level.ChunkMap.processUnloads(ChunkMap.java:492) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.level.ChunkMap.tick(ChunkMap.java:448) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.level.ServerChunkCache.tick(ServerChunkCache.java:326) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.stopServer(MinecraftServer.java:616) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.dedicated.DedicatedServer.stopServer(DedicatedServer.java:570) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:742) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.lambda$spin$2(MinecraftServer.java:267) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at java.base/java.lang.Thread.run(Thread.java:1583) [?:?]
Caused by: java.lang.IllegalArgumentException: The removed container should be present in the removed entries, but isn't
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.api.core.CoreValidations.validateContains(CoreValidations.java:73) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.api.network.impl.NetworkBuilderImpl.remove(NetworkBuilderImpl.java:122) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.common.RefinedStorageApiImpl.removeNetworkNodeContainer(RefinedStorageApiImpl.java:366) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.common.api.RefinedStorageApiProxy.removeNetworkNodeContainer(RefinedStorageApiProxy.java:229) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.common.api.support.network.NetworkNodeContainerProvider.lambda$remove$2(NetworkNodeContainerProvider.java:33) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at java.base/java.lang.Iterable.forEach(Iterable.java:75) ~[?:?]
	at java.base/java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1116) ~[?:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.common.api.support.network.NetworkNodeContainerProvider.remove(NetworkNodeContainerProvider.java:33) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.common.api.support.network.AbstractNetworkNodeContainerBlockEntity.setRemoved(AbstractNetworkNodeContainerBlockEntity.java:48) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at MC-BOOTSTRAP/[email protected]/it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap$1.forEach(Object2ObjectOpenHashMap.java:1188) ~[fastutil-8.5.12.jar%23113!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.world.level.chunk.LevelChunk.clearAllBlockEntities(LevelChunk.java:618) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.level.ServerLevel.unload(ServerLevel.java:954) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.level.ChunkMap.lambda$scheduleUnload$12(ChunkMap.java:521) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at java.base/java.util.concurrent.CompletableFuture$UniRun.tryFire(CompletableFuture.java:787) ~[?:?]
	... 9 more
[29Apr2025 12:30:59.476] [Server thread/ERROR] [net.minecraft.server.level.ChunkMap/]: Failed to save chunk [0, 0]
java.util.concurrent.CompletionException: java.lang.IllegalArgumentException: The removed container should be present in the removed entries, but isn't
	at java.base/java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:315) ~[?:?]
	at java.base/java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:320) ~[?:?]
	at java.base/java.util.concurrent.CompletableFuture$UniRun.tryFire(CompletableFuture.java:791) ~[?:?]
	at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:482) ~[?:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.level.ChunkMap.processUnloads(ChunkMap.java:492) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.level.ChunkMap.tick(ChunkMap.java:448) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.level.ServerChunkCache.tick(ServerChunkCache.java:326) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.stopServer(MinecraftServer.java:616) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.dedicated.DedicatedServer.stopServer(DedicatedServer.java:570) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:742) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.MinecraftServer.lambda$spin$2(MinecraftServer.java:267) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at java.base/java.lang.Thread.run(Thread.java:1583) [?:?]
Caused by: java.lang.IllegalArgumentException: The removed container should be present in the removed entries, but isn't
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.api.core.CoreValidations.validateContains(CoreValidations.java:73) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.api.network.impl.NetworkBuilderImpl.remove(NetworkBuilderImpl.java:122) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.common.RefinedStorageApiImpl.removeNetworkNodeContainer(RefinedStorageApiImpl.java:366) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.common.api.RefinedStorageApiProxy.removeNetworkNodeContainer(RefinedStorageApiProxy.java:229) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.common.api.support.network.NetworkNodeContainerProvider.lambda$remove$2(NetworkNodeContainerProvider.java:33) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at java.base/java.lang.Iterable.forEach(Iterable.java:75) ~[?:?]
	at java.base/java.util.Collections$UnmodifiableCollection.forEach(Collections.java:1116) ~[?:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.common.api.support.network.NetworkNodeContainerProvider.remove(NetworkNodeContainerProvider.java:33) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at TRANSFORMER/[email protected]/com.refinedmods.refinedstorage.common.api.support.network.AbstractNetworkNodeContainerBlockEntity.setRemoved(AbstractNetworkNodeContainerBlockEntity.java:48) ~[refinedstorage-neoforge-2.0.0-beta.2.jar%23809!/:?]
	at MC-BOOTSTRAP/[email protected]/it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap$1.forEach(Object2ObjectOpenHashMap.java:1188) ~[fastutil-8.5.12.jar%23113!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.world.level.chunk.LevelChunk.clearAllBlockEntities(LevelChunk.java:618) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.level.ServerLevel.unload(ServerLevel.java:954) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at TRANSFORMER/[email protected]/net.minecraft.server.level.ChunkMap.lambda$scheduleUnload$12(ChunkMap.java:521) ~[server-1.21.1-20240808.144430-srg.jar%23509!/:?]
	at java.base/java.util.concurrent.CompletableFuture$UniRun.tryFire(CompletableFuture.java:787) ~[?:?]
	... 9 more
commented

We found out what the issue was. We had a Hyperbox (from Hyperbox mod) next to the RS setup, with a single RS crafting grid inside connected with a cable to the outside.
When deleting that, the entire issue resolved itself.

commented

We've just started having the same issue with our feed the beast evolution server running Refined Storage 2.0.0 beta-2. Our user connected a Modern Industrialization Fluid pipe to a disk interface.

Currently looking for ways to either delete the block from the world (it's at spawn so I need to find a tool that can currently edit an ftb world).

crash-2025-05-01_07.29.38-server.txt

commented

@dblencowe That problem is unrelated and has been fixed in the last few betas.

commented

At first glance, this appears to be a problem in Hyperbox.

Image

ClearRemoved is constantly being called on RS blocks causing the graph to mess up:

Image

Then at world close time this breaks.