1. Welcome to LilyPad. Download the project, explore the forums, and create your own LilyPad network.


    If you use the software and enjoy it or have a question, or would like to contribute to the future of the software directly or through resources, please sign up and join our little community.

Resolved Large scoreboard packets being dropped

Discussion in 'Bug Reports' started by Tzeentchful, Sep 14, 2013.

  1. Tzeentchful

    Tzeentchful Member Contributor

    While migrating our servers over last night I encountered a bug in lilypad that stops any client from joining.
    I found that if you have a scoreboard with enough items in it, it can cause the packet to become bigger then the max packet size allowed by lilypad.
    Code (text):
    io.netty.handler.codec.DecoderException: java.lang.Exception: Max packet size passed, dropping
            at io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:415)
            at io.netty.handler.codec.ReplayingDecoder.channelInactive(ReplayingDecoder.java:328)
            at io.netty.channel.DefaultChannelHandlerContext.invokeChannelInactive(DefaultChannelHandlerContext.java:234)
            at io.netty.channel.DefaultChannelHandlerContext.fireChannelInactive(DefaultChannelHandlerContext.java:220)
            at io.netty.channel.ChannelInboundHandlerAdapter.channelInactive(ChannelInboundHandlerAdapter.java:75)
            at io.netty.handler.timeout.ReadTimeoutHandler.channelInactive(ReadTimeoutHandler.java:143)
            at io.netty.channel.DefaultChannelHandlerContext.invokeChannelInactive(DefaultChannelHandlerContext.java:234)
            at io.netty.channel.DefaultChannelHandlerContext.fireChannelInactive(DefaultChannelHandlerContext.java:220)
            at io.netty.channel.DefaultChannelPipeline.fireChannelInactive(DefaultChannelPipeline.java:767)
            at io.netty.channel.AbstractChannel$AbstractUnsafe$5.run(AbstractChannel.java:558)
            at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:354)
            at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:366)
            at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101)
            at java.lang.Thread.run(Thread.java:724)
    Caused by: java.lang.Exception: Max packet size passed, dropping
            at lilypad.server.proxy.packet.GenericPacketCodec.decode(GenericPacketCodec.java:202)
            at lilypad.server.proxy.packet.GenericPacketCodec.decode(GenericPacketCodec.java:14)
            at lilypad.server.proxy.packet.GenericPacketCodec.decode(GenericPacketCodec.java:7)
            at lilypad.packet.common.PacketDecoder.decode(PacketDecoder.java:25)
            at io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:360)
     
    Since lilypad drops just the large packet the client still receives all the other scoreboard packets which causes this error.
    [​IMG]
    removing the scoreboard.dat from the world folder fixes this issue until it gets big enough again.
  2. Coelho

    Coelho Software Engineer Staff Member Administrator Maintainer

    Odd, I'll look into it.
  3. Fadel

    Fadel New Member

    Getting the same Error, can't put proxy up.
  4. Coelho

    Coelho Software Engineer Staff Member Administrator Maintainer

    This has been fixed in the latest builds.
    • Like Like x 1

Share This Page