Antibarrel causes crash when too full
tipeon opened this issue · 6 comments
I used an antibarrel to collect loots from a mob farm and left it unattended for a long time.
When I came back and tried to open the antibarrel GUI, the game crashed.
Modpack: Modern skyblock 3.4
Yaba version: 1.1.2.6
I believe that this is the relevant exception:
[00:25:57] [Netty Local Client IO #0/ERROR] [FML]: FMLIndexedMessageCodec exception caught
io.netty.handler.codec.DecoderException: java.lang.RuntimeException: Tried to read NBT tag that was too big; tried to allocate: 2097186bytes where max allowed: 2097152
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:98) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111)
(...)
Caused by: java.lang.RuntimeException: Tried to read NBT tag that was too big; tried to allocate: 2097186bytes where max allowed: 2097152
at net.minecraft.nbt.NBTSizeTracker.func_152450_a(NBTSizeTracker.java:25) ~[gh.class:?]
at net.minecraft.nbt.NBTTagCompound.func_152446_a(NBTTagCompound.java:57) ~[fy.class:?]
at net.minecraft.nbt.NBTTagList.func_152446_a(NBTTagList.java:63) ~[ge.class:?]
at net.minecraft.nbt.NBTTagCompound.func_152449_a(NBTTagCompound.java:496) ~[fy.class:?]
at net.minecraft.nbt.NBTTagCompound.func_152446_a(NBTTagCompound.java:58) ~[fy.class:?]
at net.minecraft.nbt.CompressedStreamTools.func_152455_a(CompressedStreamTools.java:133) ~[gi.class:?]
at net.minecraft.nbt.CompressedStreamTools.func_152456_a(CompressedStreamTools.java:88) ~[gi.class:?]
at net.minecraft.network.PacketBuffer.func_150793_b(PacketBuffer.java:315) ~[gy.class:?]
at net.minecraftforge.fml.common.network.ByteBufUtils.readTag(ByteBufUtils.java:227) ~[ByteBufUtils.class:?]
at com.feed_the_beast.ftblib.lib.io.DataIn.readNBT(DataIn.java:249) ~[DataIn.class:?]
at com.latmod.yabba.net.MessageAntibarrelUpdate.readData(MessageAntibarrelUpdate.java:47) ~[MessageAntibarrelUpdate.class:?]
at com.feed_the_beast.ftblib.lib.net.MessageBase.fromBytes(MessageBase.java:35) ~[MessageBase.class:?]
at net.minecraftforge.fml.common.network.simpleimpl.SimpleIndexedCodec.decodeInto(SimpleIndexedCodec.java:36) ~[SimpleIndexedCodec.class:?]
at net.minecraftforge.fml.common.network.simpleimpl.SimpleIndexedCodec.decodeInto(SimpleIndexedCodec.java:26) ~[SimpleIndexedCodec.class:?]
at net.minecraftforge.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:107) ~[FMLIndexedMessageToMessageCodec.class:?]
at net.minecraftforge.fml.common.network.FMLIndexedMessageToMessageCodec.decode(FMLIndexedMessageToMessageCodec.java:38) ~[FMLIndexedMessageToMessageCodec.class:?]
at io.netty.handler.codec.MessageToMessageCodec$2.decode(MessageToMessageCodec.java:81) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:88) ~[netty-all-4.1.9.Final.jar:4.1.9.Final]
... 33 more
Full log: https://paste.ee/p/YJequ
Hummm... I have an idea how to fix that but that could be dangerous... Oh well!
Currently happening on my server too: https://gist.githubusercontent.com/Corosauce/97655991ee1e9595f53da72caacf2104/raw/1acd3b9cb70325b9176e8a2c7cacf019dc81d29b/gistfile1.txt
I'm having this too. My experience was at first a frozen screen each time. I broke the anti barrel, and placed it back down in the same spot. after that it wasn't freezing my game, it was treating it like I was on a server and the server went down.
What if the max item/type count wouldn't be determined by size but by max byte count, similar to AE cells? 🤔
I think I can solve this issue with MinecraftForge/MinecraftForge#4932 now