Fabric API

Fabric API

112M Downloads

Error decoding something [fabric server + viafabric]

RealKomander opened this issue ยท 3 comments

commented

When I try to connect to my fabric 1.20.2 server through 1.20.1 client, I get this error in velocity console:

[13:23:21 ERROR]: [connected player] RealKomander (/IP): unable to connect to server classic
io.netty.handler.codec.CorruptedFrameException: Error decoding class com.velocitypowered.proxy.protocol.packet.LoginPluginMessage Direction CLIENTBOUND Protocol 1.20 State LOGIN ID 4
at com.velocitypowered.proxy.protocol.netty.MinecraftDecoder.handleDecodeFailure(MinecraftDecoder.java:131) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at com.velocitypowered.proxy.protocol.netty.MinecraftDecoder.tryDecode(MinecraftDecoder.java:86) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at com.velocitypowered.proxy.protocol.netty.MinecraftDecoder.channelRead(MinecraftDecoder.java:61) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:286) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:318) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at java.lang.Thread.run(Thread.java:833) [?:?]
Caused by: io.netty.handler.codec.CorruptedFrameException: Bad string size (got 465914, maximum is 65536)
at com.velocitypowered.proxy.protocol.util.NettyPreconditions.checkFrame(NettyPreconditions.java:83) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at com.velocitypowered.proxy.protocol.ProtocolUtils.readString(ProtocolUtils.java:200) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at com.velocitypowered.proxy.protocol.ProtocolUtils.readString(ProtocolUtils.java:192) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at com.velocitypowered.proxy.protocol.ProtocolUtils.readString(ProtocolUtils.java:179) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at com.velocitypowered.proxy.protocol.packet.LoginPluginMessage.decode(LoginPluginMessage.java:67) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
at com.velocitypowered.proxy.protocol.netty.MinecraftDecoder.tryDecode(MinecraftDecoder.java:84) ~[velocity-3.2.0-SNAPSHOT-290.jar:3.2.0-SNAPSHOT (git-67d5e77b-b290)]
... 30 more

And this, even weirder error in server console:

[13:21:44] [Server thread/INFO]: com.mojang.authlib.GameProfile@56574ae1[id=b18a2b65-0131-4c4f-926c-f81305475690,name=RealKomander,properties={textures=[Property[name=textures, value=ewogICJ0aW1lc3RhbXAiIDogMTcwMDkwNzY5Nzg0MSwKICAicHJvZmlsZUlkIiA6ICJiMThhMmI2NTAxMzE0YzRmOTI2Y2Y4MTMwNTQ3NTY5MCIsCiAgInByb2ZpbGVOYW1lIiA6ICJSZWFsS29tYW5kZXIiLAogICJzaWduYXR1cmVSZXF1aXJlZCIgOiB0cnVlLAogICJ0ZXh0dXJlcyIgOiB7CiAgICAiU0tJTiIgOiB7CiAgICAgICJ1cmwiIDogImh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOWVhYzA0YzUxYjMyMDMxODliMTkxOTc5ZjMyZTg0NDJlZmQ4MzhhYWVlNDM4ZDZiNGU5NWJhYTYxOGFmYzNlYyIKICAgIH0sCiAgICAiQ0FQRSIgOiB7CiAgICAgICJ1cmwiIDogImh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMjM0MGMwZTAzZGQyNGExMWIxNWE4YjMzYzJhN2U5ZTMyYWJiMjA1MWIyNDgxZDBiYTdkZWZkNjM1Y2E3YTkzMyIKICAgIH0KICB9Cn0=, signature=OXmovoAbuZA7JH1vq8QxUYuduwCqFO+a27TooboZ7AWUswbjeRnur7iMZjiRiaCiCYTtlEly3oUfKcP46YX+1d8YaHH9Nhb722fTiw/kJk6LhQqlPiOCJwvRrSM2WSgO/jhQexsCoR02XActGLBZKNsbqX0RCIshIe75qtTSG1rMbMIVaL+/tVujkRsEeMtflhupbCVU0ghy6DRZcmAvpmkYMZJPyOJYw4ryfQkRXEoorymTHudGgIuadGDBN5MQBDPIG1Kzh9yeo1Ym8Th2Msws6HFWCRtbSdcqsRucpLusKsO6z3x7YMxHCC4b56ZYq09uvILuJYNzteSnkH/i5smNcqG9yNZ3I8bvpSZzAoP2frVkQRFTuFvWmYCVdI3fhOMWVNWxec6XncDPZw03g0u0cSsRQTginU6XKhL6TG5hxXZvHWsconiAN+iXKkSsotZ6NCS/yuyeuI8lekiyoJfY6zFnEL9GtRV4HgXzOwzV5WA+o0+N3TYfXLU/gutbL4Lp+wxAZq+7rLsrq55/kQ9oS87go66O10/n67fx8mb71iu63SPYyhRLg9rWNND5+I8djna8sy9Z3GSz2CVO0pb3KbdSNYrahp4IvGO0eJ9DNjgmbvrCswZ4vDUuNfpqiupE/MI6Te+36fSRWk05YBGjgIsHYjODp50vtmD7N7o=]]}] lost connection: Disconnected
[13:23:21] [Server thread/INFO]: com.mojang.authlib.GameProfile@5c3c95d[id=b18a2b65-0131-4c4f-926c-f81305475690,name=RealKomander,properties={textures=[Property[name=textures, value=ewogICJ0aW1lc3RhbXAiIDogMTcwMDkwNzc5NDc2OSwKICAicHJvZmlsZUlkIiA6ICJiMThhMmI2NTAxMzE0YzRmOTI2Y2Y4MTMwNTQ3NTY5MCIsCiAgInByb2ZpbGVOYW1lIiA6ICJSZWFsS29tYW5kZXIiLAogICJzaWduYXR1cmVSZXF1aXJlZCIgOiB0cnVlLAogICJ0ZXh0dXJlcyIgOiB7CiAgICAiU0tJTiIgOiB7CiAgICAgICJ1cmwiIDogImh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOWVhYzA0YzUxYjMyMDMxODliMTkxOTc5ZjMyZTg0NDJlZmQ4MzhhYWVlNDM4ZDZiNGU5NWJhYTYxOGFmYzNlYyIKICAgIH0sCiAgICAiQ0FQRSIgOiB7CiAgICAgICJ1cmwiIDogImh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMjM0MGMwZTAzZGQyNGExMWIxNWE4YjMzYzJhN2U5ZTMyYWJiMjA1MWIyNDgxZDBiYTdkZWZkNjM1Y2E3YTkzMyIKICAgIH0KICB9Cn0=, signature=tKYSuFlpyJPkgMzMcHN0Vf8LcR4DxLJtkQckFCKc4LWf+HoOfkvCYUIPvRxIR8fWij4da+6dBarm16z2ICs4vNR4Jg7xbBQaZ6qEFMF9+Hdz2aK8TbluEKUY6uZin6/9YLu9rhPWkm+N01W+h2yNJVSZFxbFRo/LGzl3N5GxZw/VtT4AdpqamkrGDKXjjNWQ8tgSK+omFSv/rqOdscKPH9UrYiy0/EdW/3At9j1bHfJnMIgI90X2f/ACBP3mTEyMdvBvH59ArxEKbe4xvJPhOCd8RgrFcwBjA35hTzCNb7oegbqyxJvokOwmKZoNe1ayOI2kDoSjWiGMgCqMmVauJwIDvsjEAOzl7ZDaFxId3cUnNrui2RzrhU8mIBVzxj9IsDPN1dhkaZGb4dYRSwDaDrTVWXikYi94kYk3bkOFDEcsIV8zGTcGPv6RKDIDWb9rso6P+IqHHJtO3oLKQy5Pj9TZpvnyazt/VDxCXX+EgWKLdU5f5P9yQL5QTa1Ve+nDsoQYH+Ky5CHEpvLfyA32L4o6iUXJuFlPAZa0Cr07WBO91dGuv2cjWXXA3cn3mSuQarcpHpQCDLGMxb/QRGnx1rAf/Y+nYxgftW7bdGoCRbewSFQ6IlMhqzOVtlX//IU0LqEXMQcquwQF7wlSK+Gd08dj6zNSSC8rI8wFZ+yZPSM=]]}] lost connection: Disconnected

Everything is fine if I try connectiong from 1.20.2 client

On ViaFabric side, they think this is a fabricAPI issue, here's the full discussion: ViaVersion/ViaFabric#275

commented

@RealKomander Hmm, could you enable debug logging on Fabric server side? Also, if you have ANY mods besides FAPI (including Lithium, Krypton etc), perhaps disable those.

In 1.20.2 LoginPluginMessage/LoginQueryRequestPayload is never sent by FAPI unless another mod uses login networking. (RegSync now uses configuration networking.) There's clearly something fishy going on, but I cannot tell.

commented

cry about that lol @RealKomander

commented

This issue has been resolved in latest viabackwards dev build.