PaperMC / Waterfall

BungeeCord fork that aims to improve performance and stability.
https://papermc.io
MIT License
736 stars 295 forks source link

When attempting to teleport to another subserver, an error occurred. #809

Closed lipind closed 12 months ago

lipind commented 12 months ago

[/127.0.0.1:60147] <-> InitialHandler - A decoder exception has been thrown: io.netty.handler.codec.DecoderException: net.md_5.bungee.protocol.OverflowPacketException: Cannot receive string longer than 765 (got 1210 bytes) at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:98) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:333) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:454) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.handler.codec.ByteToMessageDecoder.handlerRemoved(ByteToMessageDecoder.java:266) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:536) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:468) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:290) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at java.lang.Thread.run(Thread.java:833) [?:?] Caused by: net.md_5.bungee.protocol.OverflowPacketException: Cannot receive string longer than 765 (got 1210 bytes) at net.md_5.bungee.protocol.DefinedPacket.readString(DefinedPacket.java:61) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at net.md_5.bungee.protocol.packet.Handshake.read(Handshake.java:27) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at net.md_5.bungee.protocol.DefinedPacket.read(DefinedPacket.java:378) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at net.md_5.bungee.protocol.MinecraftDecoder.decode(MinecraftDecoder.java:60) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at net.md_5.bungee.protocol.MinecraftDecoder.decode(MinecraftDecoder.java:12) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:88) ~[waterfall-1.20-536.jar:git:Waterfall-Bootstrap:1.20-R0.1-SNAPSHOT:ec41547:536] ... 29 more

Janmm14 commented 12 months ago

Invalid client?

lipind commented 12 months ago

In fact, I encountered an error while trying to move from two Waterfall servers,(Waterfall to Waterfall)

I accounted for this issue while trying to resolve some cross server data synchronization problems.

Can this type of server pass through?

electronicboy commented 12 months ago

Proxy in proxy is unsupported due to spigot breaking the vanilla protocol in order to support their usecase. If you want to embed proxy instances, you'll need to manage the protocol change, as well as any other potential issues that ensue, i.e. you won't have IPs/UUIDs forwarded with proxy-in-proxy

lipind commented 12 months ago

Thank you for your reply. I have implemented this function using Velocity