Packet encoding of packet ID 85 threw (skippable? false) java.util.ConcurrentModificationException: null
Blautee opened this issue ยท 1 comments
Hi, i'm currently running ProtocolLib v5.0.0-SNAPSHOT-b575 on my paper-servers in a bungee network. Sometimes (randomly?) if a player joins a server, one player that already has been on that server will be kicked with this message:
"Internal Exception: io.netty.handler.codec.EncoderException: java.util.ConcurrentModificationException"
The console also throws an error (see below). I've seen the unsolved issue of the same error title, but while checking their log, i saw multiple other plugins mentioned, which isn't the case for me, that's why i decided to write a new one. I know that i currently don't run the newest dev-version, but this error was present since i updated to 1.19 dev-builds (however, i will update my servers now and check, but since this occures randomly, it's hard to tell if it got fixed, sorry). Unfortunatly i can't really tell how to reproduce it.
Here is a link to my /protocol dump
https://pastebin.com/raw/4EuR4H0p
Thanks in advance :D
Console Error:
[17:10:20] [Netty Epoll Server IO #0/ERROR]: Packet encoding of packet ID 85 threw (skippable? false)
java.util.ConcurrentModificationException: null
at java.util.HashMap$HashIterator.nextNode(HashMap.java:1597) ~[?:?]
at java.util.HashMap$KeyIterator.next(HashMap.java:1620) ~[?:?]
at net.minecraft.network.FriendlyByteBuf.writeCollection(FriendlyByteBuf.java:178) ~[?:?]
at net.minecraft.network.protocol.game.ClientboundSetPlayerTeamPacket.write(ClientboundSetPlayerTeamPacket.java:79) ~[?:?]
at net.minecraft.network.PacketEncoder.encode(PacketEncoder.java:41) ~[paper-1.19.jar:git-Paper-60]
at net.minecraft.network.PacketEncoder.encode(PacketEncoder.java:14) ~[paper-1.19.jar:git-Paper-60]
at io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:107) ~[netty-codec-4.1.77.Final.jar:4.1.77.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:717) ~[netty-transport-4.1.77.Final.jar:4.1.77.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:709) ~[netty-transport-4.1.77.Final.jar:4.1.77.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:792) ~[netty-transport-4.1.77.Final.jar:4.1.77.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:702) ~[netty-transport-4.1.77.Final.jar:4.1.77.Final]
at io.netty.handler.codec.MessageToByteEncoder.write(MessageToByteEncoder.java:120) ~[netty-codec-4.1.77.Final.jar:4.1.77.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:717) ~[netty-transport-4.1.77.Final.jar:4.1.77.Final]
at io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:764) ~[netty-transport-4.1.77.Final.jar:4.1.77.Final]
at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:790) ~[netty-transport-4.1.77.Final.jar:4.1.77.Final]
at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:758) ~[netty-transport-4.1.77.Final.jar:4.1.77.Final]
at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1020) ~[netty-transport-4.1.77.Final.jar:4.1.77.Final]
at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:311) ~[netty-transport-4.1.77.Final.jar:4.1.77.Final]
at com.comphenix.protocol.injector.netty.channel.NettyChannelProxy.writeAndFlush(NettyChannelProxy.java:227) ~[ProtocolLib.jar:?]
at com.comphenix.protocol.injector.netty.channel.NettyChannelProxy.writeAndFlush(NettyChannelProxy.java:233) ~[ProtocolLib.jar:?]
at net.minecraft.network.Connection.doSendPacket(Connection.java:463) ~[?:?]
at net.minecraft.network.Connection.lambda$writePacket$11(Connection.java:437) ~[?:?]
at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:174) ~[netty-common-4.1.77.Final.jar:4.1.77.Final]
at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:167) ~[netty-common-4.1.77.Final.jar:4.1.77.Final]
at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470) ~[netty-common-4.1.77.Final.jar:4.1.77.Final]
at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:391) ~[netty-transport-classes-epoll-4.1.77.Final.jar:4.1.77.Final]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:995) ~[netty-common-4.1.77.Final.jar:4.1.77.Final]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.77.Final.jar:4.1.77.Final]
at java.lang.Thread.run(Thread.java:833) ~[?:?]
Based on the information I can take from the given stacktrace, your issue doesn't seem to be caused by ProtocolLib. There might be a plugin which is constructing and sending the packet, because if the packet would be constructed by paper then the collection would be immutable, not a HashMap-KeyView.
Maybe search through all plugins if you can find one doing that...