title: Leak: ByteBuf.release() was not called before it's garbage-collected although I call .release
body: <p>Somtimes this error appears although I call .release() can anyone explain this ?</p>
  <p>Thanks in advance</p>
  <p>Here is my Code</p>
  <pre><code>@Override
  public void channelRead(ChannelHandlerContext ctx, Object msg) {
  
      ByteBuf in = (ByteBuf) msg;
      try {
  
  
          if (in != null) {
                 port = parseProxyline(in.copy());//According to the error log here occurs the leak 
  
              if (port != 0) {
                  new ProxyRemoteConn(port, in.copy(), ctx);
              }
          }
      } finally {
          in.release();
      }
  
  
  }
  </code></pre>
  <p>And the error msg</p>
  <pre><code>LEAK: ByteBuf.release() was not called before it's garbage-collected. See https://netty.io/wiki/reference-counted-objects.html for more information.
  Recent access records: 
  Created at:
      io.netty.buffer.PooledByteBufAllocator.newDirectBuffer(PooledByteBufAllocator.java:402)
      io.netty.buffer.AbstractByteBufAllocator.directBuffer(AbstractByteBufAllocator.java:188)
      io.netty.buffer.UnsafeByteBufUtil.copy(UnsafeByteBufUtil.java:436)
      io.netty.buffer.PooledUnsafeDirectByteBuf.copy(PooledUnsafeDirectByteBuf.java:216)
      io.netty.buffer.AbstractByteBuf.copy(AbstractByteBuf.java:1194)
      ProxyOutgoingChannelHandler.channelRead(ProxyOutgoingChannelHandler.java:50)
      io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
      io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
      io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357)
      io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
      io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379)
      io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365)
      io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
      io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:795)
      io.netty.channel.epoll.EpollEventLoop.processReady(EpollEventLoop.java:480)
      io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:378)
      io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
      io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
      io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
      java.base/java.lang.Thread.run(Thread.java:829)
  
  Process finished with exit code 130 (interrupted by signal 2: SIGINT)
  
  </code></pre>
  <p>This code is to read a port in an added line inside the header and then open a new connection to it</p>