After upgrading to 3.1.0 observe the following errors:
[2024-05-22 16:03:12,896] [eventloop-4-3] [WARN] [i.n.util.ReferenceCountUtil]: Failed to release a message: PooledUnsafeDirectByteBuf(freed)
io.netty.util.IllegalReferenceCountException: refCnt: 0, decrement: 1
at jars//io.netty.util.internal.ReferenceCountUpdater.toLiveRealRefCnt(ReferenceCountUpdater.java:83)
at jars//io.netty.util.internal.ReferenceCountUpdater.release(ReferenceCountUpdater.java:148)
at jars//io.netty.buffer.AbstractReferenceCountedByteBuf.release(AbstractReferenceCountedByteBuf.java:101)
at jars//io.netty.util.ReferenceCountUtil.release(ReferenceCountUtil.java:90)
at jars//io.netty.util.ReferenceCountUtil.safeRelease(ReferenceCountUtil.java:116)
at jars//io.netty.channel.ChannelOutboundBuffer.remove0(ChannelOutboundBuffer.java:337)
at jars//io.netty.channel.ChannelOutboundBuffer.failFlushed(ChannelOutboundBuffer.java:691)
at jars//io.netty.channel.AbstractChannel$AbstractUnsafe.closeOutboundBufferForShutdown(AbstractChannel.java:672)
at jars//io.netty.channel.AbstractChannel$AbstractUnsafe.shutdownOutput(AbstractChannel.java:666)
at jars//io.netty.channel.AbstractChannel$AbstractUnsafe.handleWriteError(AbstractChannel.java:953)
at jars//io.netty.channel.AbstractChannel$AbstractUnsafe.flush0(AbstractChannel.java:933)
at jars//io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.flush0(AbstractNioChannel.java:359)
at jars//io.netty.channel.AbstractChannel$AbstractUnsafe.flush(AbstractChannel.java:895)
at jars//io.netty.channel.DefaultChannelPipeline$HeadContext.flush(DefaultChannelPipeline.java:1372)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:935)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeFlush(AbstractChannelHandlerContext.java:921)
at jars//io.netty.channel.AbstractChannelHandlerContext.flush(AbstractChannelHandlerContext.java:907)
at jars//io.netty.handler.flush.FlushConsolidationHandler.flushNow(FlushConsolidationHandler.java:204)
at jars//io.netty.handler.flush.FlushConsolidationHandler.flushIfNeeded(FlushConsolidationHandler.java:197)
at jars//io.netty.handler.flush.FlushConsolidationHandler.channelWritabilityChanged(FlushConsolidationHandler.java:180)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeChannelWritabilityChanged(AbstractChannelHandlerContext.java:526)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeChannelWritabilityChanged(AbstractChannelHandlerContext.java:505)
at jars//io.netty.channel.AbstractChannelHandlerContext.fireChannelWritabilityChanged(AbstractChannelHandlerContext.java:498)
at jars//io.netty.channel.DefaultChannelPipeline$HeadContext.channelWritabilityChanged(DefaultChannelPipeline.java:1433)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeChannelWritabilityChanged(AbstractChannelHandlerContext.java:524)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeChannelWritabilityChanged(AbstractChannelHandlerContext.java:505)
at jars//io.netty.channel.DefaultChannelPipeline.fireChannelWritabilityChanged(DefaultChannelPipeline.java:931)
at jars//io.netty.channel.ChannelOutboundBuffer.fireChannelWritabilityChanged(ChannelOutboundBuffer.java:659)
at jars//io.netty.channel.ChannelOutboundBuffer.setUnwritable(ChannelOutboundBuffer.java:638)
at jars//io.netty.channel.ChannelOutboundBuffer.incrementPendingOutboundBytes(ChannelOutboundBuffer.java:188)
at jars//io.netty.channel.ChannelOutboundBuffer.addMessage(ChannelOutboundBuffer.java:140)
at jars//io.netty.channel.AbstractChannel$AbstractUnsafe.write(AbstractChannel.java:882)
at jars//io.netty.channel.DefaultChannelPipeline$HeadContext.write(DefaultChannelPipeline.java:1367)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:889)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeWrite(AbstractChannelHandlerContext.java:875)
at jars//io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:984)
at jars//io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:868)
at jars//io.netty.handler.codec.http.HttpObjectEncoder.writeOutList(HttpObjectEncoder.java:121)
at jars//io.netty.handler.codec.http.HttpObjectEncoder.write(HttpObjectEncoder.java:113)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeWrite0(AbstractChannelHandlerContext.java:893)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:956)
at jars//io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:982)
at jars//io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:950)
at jars//io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:1000)
at jars//io.netty.handler.stream.ChunkedWriteHandler.doFlush(ChunkedWriteHandler.java:286)
at jars//io.netty.handler.stream.ChunkedWriteHandler.flush(ChunkedWriteHandler.java:146)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeFlush0(AbstractChannelHandlerContext.java:937)
at jars//io.netty.channel.AbstractChannelHandlerContext.invokeWriteAndFlush(AbstractChannelHandlerContext.java:957)
at jars//io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:982)
at jars//io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:950)
at jars//io.jooby.internal.netty.NettyContext.lambda$send$1(NettyContext.java:676)
at jars//io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173)
at jars//io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166)
at jars//io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasksFrom(SingleThreadEventExecutor.java:426)
at jars//io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:375)
at jars//io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:557)
at jars//io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
at jars//io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
at jars//io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:1583)
[2024-05-22 16:03:12,914] [eventloop-4-3] [ERROR] GET /swagger/swagger-ui-bundle.js 500 Server Error
After upgrading to
3.1.0
observe the following errors:Swagger page is broken.
Probably a side-effect of the latest Netty performance improvements https://github.com/jooby-project/jooby/commit/f30a43248141c3f592582113c7d02a4be244a8e0