Frequent crashing issue
twothe opened this issue ยท 2 comments
Weather2 (MC 1.21.1 on NeoForge) seems to cause frequent crashing issues with ConcurrentModificationExceptions:
[07Aug2025 04:28:25.461] [Netty Server IO #1/ERROR] [net.minecraft.network.PacketEncoder/]: Error sending packet clientbound/minecraft:custom_payload
io.netty.handler.codec.EncoderException: Failed to encode packet 'clientbound/minecraft:custom_payload'
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:55) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:14) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.PacketEncoder.encode(PacketEncoder.java:24) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.PacketEncoder.encode(PacketEncoder.java:12) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at MC-BOOTSTRAP/[email protected]/io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:107) ~[netty-codec-4.1.97.Final.jar%23156!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:863) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:968) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:856) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:113) ~[netty-codec-4.1.97.Final.jar%23156!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:863) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:968) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:856) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:113) ~[netty-codec-4.1.97.Final.jar%23156!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:863) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:968) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:856) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.ChannelOutboundHandlerAdapter.write(ChannelOutboundHandlerAdapter.java:113) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection$2.write(Connection.java:528) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:940) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:966) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:934) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:984) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1025) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:306) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.doSendPacket$mixinextras$wrapped$80(Connection.java:364) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.mixinextras$bridge$doSendPacket$mixinextras$wrapped$80$81(Connection.java) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.wrapMethod$zfe000$modernfix$checkClientPresence(Connection.java:750) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.doSendPacket(Connection.java) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.lambda$sendPacket$12(Connection.java:359) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at java.base/java.lang.Thread.run(Thread.java:1583) [?:?]
Caused by: java.lang.RuntimeException: Failed encoding custom payload weather2:nbt_client: java.util.ConcurrentModificationException
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.writeCap(CustomPacketPayload.java:42) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:47) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:29) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$4.encode(StreamCodec.java:81) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:97) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:87) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:53) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
... 39 more
Caused by: java.util.ConcurrentModificationException
at java.base/java.util.HashMap$HashIterator.nextNode(HashMap.java:1605) ~[?:?]
at java.base/java.util.HashMap$KeyIterator.next(HashMap.java:1628) ~[?:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.CompoundTag.write(CompoundTag.java:190) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.CompoundTag.writeNamedTag(CompoundTag.java:518) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.CompoundTag.write(CompoundTag.java:192) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.NbtIo.writeAnyTag(NbtIo.java:163) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.FriendlyByteBuf.writeNbt(FriendlyByteBuf.java:513) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.ByteBufCodecs$18.encode(ByteBufCodecs.java:257) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.ByteBufCodecs$18.encode(ByteBufCodecs.java:243) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$4.encode(StreamCodec.java:81) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$7.encode(StreamCodec.java:136) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.writeCap(CustomPacketPayload.java:40) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:47) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:29) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$4.encode(StreamCodec.java:81) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:97) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:87) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:53) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
... 39 more
[07Aug2025 04:28:25.471] [Netty Server IO #1/ERROR] [net.minecraft.network.Connection/]: Exception caught in connection
io.netty.handler.codec.EncoderException: Failed to encode packet 'clientbound/minecraft:custom_payload'
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:55) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:14) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.PacketEncoder.encode(PacketEncoder.java:24) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.PacketEncoder.encode(PacketEncoder.java:12) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at MC-BOOTSTRAP/[email protected]/io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:107) ~[netty-codec-4.1.97.Final.jar%23156!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:863) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:968) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:856) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:113) ~[netty-codec-4.1.97.Final.jar%23156!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:863) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:968) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:856) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:113) ~[netty-codec-4.1.97.Final.jar%23156!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:863) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:968) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:856) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.ChannelOutboundHandlerAdapter.write(ChannelOutboundHandlerAdapter.java:113) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection$2.write(Connection.java:528) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:940) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:966) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:934) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:984) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1025) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:306) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.doSendPacket$mixinextras$wrapped$80(Connection.java:364) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.mixinextras$bridge$doSendPacket$mixinextras$wrapped$80$81(Connection.java) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.wrapMethod$zfe000$modernfix$checkClientPresence(Connection.java:750) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.doSendPacket(Connection.java) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.lambda$sendPacket$12(Connection.java:359) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at java.base/java.lang.Thread.run(Thread.java:1583) [?:?]
Caused by: java.lang.RuntimeException: Failed encoding custom payload weather2:nbt_client: java.util.ConcurrentModificationException
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.writeCap(CustomPacketPayload.java:42) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:47) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:29) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$4.encode(StreamCodec.java:81) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:97) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:87) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:53) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
... 39 more
Caused by: java.util.ConcurrentModificationException
at java.base/java.util.HashMap$HashIterator.nextNode(HashMap.java:1605) ~[?:?]
at java.base/java.util.HashMap$KeyIterator.next(HashMap.java:1628) ~[?:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.CompoundTag.write(CompoundTag.java:190) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.CompoundTag.writeNamedTag(CompoundTag.java:518) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.CompoundTag.write(CompoundTag.java:192) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.NbtIo.writeAnyTag(NbtIo.java:163) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.FriendlyByteBuf.writeNbt(FriendlyByteBuf.java:513) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.ByteBufCodecs$18.encode(ByteBufCodecs.java:257) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.ByteBufCodecs$18.encode(ByteBufCodecs.java:243) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$4.encode(StreamCodec.java:81) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$7.encode(StreamCodec.java:136) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.writeCap(CustomPacketPayload.java:40) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:47) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:29) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$4.encode(StreamCodec.java:81) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:97) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:87) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:53) ~[client-1.21.1-20240808.144430-srg.jar%23378!/:?]
... 39 more
Disabling Weather2 immediately stops the issue from happening, however it also causes the weather to be boring again.
ChatGPT analysis:
Root Cause
WeatherDataAccessor.encodeClientNBT(ServerLevel) reuses a static CompoundTag instance (cachedNbt).
Two different threads access this tag concurrently:
- Server-tick thread โ mutates the tag while collecting storm & wind data.
- Netty IO thread โ reads the same tag when serialising
PacketNBTClientviaFriendlyByteBuf.writeNbt.
Because CompoundTag (and its underlying HashMap) is not thread-safe, concurrent mutation during iteration triggers HashMap$HashIterator.nextNode โ ConcurrentModificationException, which Netty wraps into an EncoderException and closes the connection.
Proposed Fix
- Replace the global
cachedNbtwith a fresh localCompoundTagon each call (snapshot pattern).public static CompoundTag encodeClientNBT(ServerLevel level) { CompoundTag tag = new CompoundTag(); encodeStorms(level, tag); encodeWind(level, tag); return tag; // thread-local snapshot }
Latest updated (1.21.0-2.8.6) still crashes frequently:
[25Aug2025 21:02:25.369] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: java.lang.NoSuchMethodError: 'int[] com.corosus.coroutil.util.CoroUtilColor.getColors(net.minecraft.world.level.block.state.BlockState)'
[25Aug2025 21:02:25.369] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: at TRANSFORMER/[email protected]/extendedrenderer.particle.entity.ParticleTexLeafColor.<init>(ParticleTexLeafColor.java:65)
[25Aug2025 21:02:25.369] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: at TRANSFORMER/[email protected]/weather2.client.SceneEnhancer.profileSurroundings(SceneEnhancer.java:1314)
[25Aug2025 21:02:25.369] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: at TRANSFORMER/[email protected]/weather2.client.SceneEnhancer.tickClientThreaded(SceneEnhancer.java:201)
[25Aug2025 21:02:25.369] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: at TRANSFORMER/[email protected]/weather2.client.SceneEnhancer.run(SceneEnhancer.java:124)
[25Aug2025 21:02:25.369] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: at java.base/java.lang.Thread.run(Thread.java:1583)
[25Aug2025 21:02:25.737] [Netty Server IO #1/ERROR] [net.minecraft.network.Connection/]: Exception caught in connection
io.netty.handler.codec.EncoderException: Failed to encode packet 'clientbound/minecraft:custom_payload'
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:55) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:14) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.neoforged.neoforge.network.filters.GenericPacketSplitter.encode(GenericPacketSplitter.java:104) ~[neoforge-21.1.203-universal.jar%23446!/:?]
at TRANSFORMER/[email protected]/net.neoforged.neoforge.network.filters.GenericPacketSplitter.encode(GenericPacketSplitter.java:39) ~[neoforge-21.1.203-universal.jar%23446!/:?]
at MC-BOOTSTRAP/[email protected]/io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:90) ~[netty-codec-4.1.97.Final.jar%23156!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:863) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:968) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:856) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.handler.codec.MessageToMessageEncoder.write(MessageToMessageEncoder.java:113) ~[netty-codec-4.1.97.Final.jar%23156!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:863) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:968) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:856) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.ChannelOutboundHandlerAdapter.write(ChannelOutboundHandlerAdapter.java:113) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection$2.write(Connection.java:528) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:881) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:940) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:966) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:934) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:984) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1025) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:306) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.doSendPacket$mixinextras$wrapped$102(Connection.java:364) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.mixinextras$bridge$doSendPacket$mixinextras$wrapped$102$103(Connection.java) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.wrapMethod$zin000$modernfix$checkClientPresence(Connection.java:1750) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.doSendPacket(Connection.java) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.Connection.lambda$sendPacket$12(Connection.java:359) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569) ~[netty-transport-4.1.97.Final.jar%23162!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at MC-BOOTSTRAP/[email protected]/io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.97.Final.jar%23157!/:4.1.97.Final]
at java.base/java.lang.Thread.run(Thread.java:1583) [?:?]
Caused by: java.lang.RuntimeException: Failed encoding custom payload weather2:nbt_client: java.util.ConcurrentModificationException
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.writeCap(CustomPacketPayload.java:42) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:47) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:29) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$4.encode(StreamCodec.java:81) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:97) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:87) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:53) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
... 34 more
Caused by: java.util.ConcurrentModificationException
at java.base/java.util.HashMap$HashIterator.nextNode(HashMap.java:1605) ~[?:?]
at java.base/java.util.HashMap$KeyIterator.next(HashMap.java:1628) ~[?:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.CompoundTag.write(CompoundTag.java:190) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.CompoundTag.writeNamedTag(CompoundTag.java:518) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.CompoundTag.write(CompoundTag.java:192) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.nbt.NbtIo.writeAnyTag(NbtIo.java:163) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.FriendlyByteBuf.writeNbt(FriendlyByteBuf.java:513) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.ByteBufCodecs$18.encode(ByteBufCodecs.java:257) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.ByteBufCodecs$18.encode(ByteBufCodecs.java:243) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$4.encode(StreamCodec.java:81) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$7.encode(StreamCodec.java:136) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.writeCap(CustomPacketPayload.java:40) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:47) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.protocol.common.custom.CustomPacketPayload$1.encode(CustomPacketPayload.java:29) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$4.encode(StreamCodec.java:81) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:97) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.StreamCodec$5.encode(StreamCodec.java:87) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
at TRANSFORMER/[email protected]/net.minecraft.network.codec.IdDispatchCodec.encode(IdDispatchCodec.java:53) ~[client-1.21.1-20240808.144430-srg.jar%23445!/:?]
... 34 more
[25Aug2025 21:02:25.770] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: java.lang.NoSuchMethodError: 'int[] com.corosus.coroutil.util.CoroUtilColor.getColors(net.minecraft.world.level.block.state.BlockState)'
[25Aug2025 21:02:25.770] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: at TRANSFORMER/[email protected]/extendedrenderer.particle.entity.ParticleTexLeafColor.<init>(ParticleTexLeafColor.java:65)
[25Aug2025 21:02:25.770] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: at TRANSFORMER/[email protected]/weather2.client.SceneEnhancer.profileSurroundings(SceneEnhancer.java:1314)
[25Aug2025 21:02:25.770] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: at TRANSFORMER/[email protected]/weather2.client.SceneEnhancer.tickClientThreaded(SceneEnhancer.java:201)
[25Aug2025 21:02:25.770] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: at TRANSFORMER/[email protected]/weather2.client.SceneEnhancer.run(SceneEnhancer.java:124)
[25Aug2025 21:02:25.770] [Weather2 Scene Enhancer/INFO] [STDERR/]: [java.lang.Throwable:printStackTrace:651]: at java.base/java.lang.Thread.run(Thread.java:1583)
[25Aug2025 21:02:25.788] [Server thread/INFO] [net.minecraft.server.network.ServerGamePacketListenerImpl/]: TwoThe lost connection: Internal Exception: io.netty.handler.codec.EncoderException: Failed to encode packet 'clientbound/minecraft:custom_payload'