[ISSUE-288] fix netty memory leak(#310)
This commit is contained in:
parent
d19b475500
commit
46cbe4fb04
@ -64,8 +64,7 @@ public final class ChunkFetchSuccess extends ResponseMessage {
|
||||
public static ChunkFetchSuccess decode(ByteBuf buf, boolean decodeBody) {
|
||||
StreamChunkSlice streamChunkSlice = StreamChunkSlice.decode(buf);
|
||||
if (decodeBody) {
|
||||
buf.retain();
|
||||
NettyManagedBuffer managedBuf = new NettyManagedBuffer(buf.duplicate());
|
||||
NettyManagedBuffer managedBuf = new NettyManagedBuffer(buf);
|
||||
return new ChunkFetchSuccess(streamChunkSlice, managedBuf);
|
||||
} else {
|
||||
return new ChunkFetchSuccess(streamChunkSlice, NettyManagedBuffer.EmptyBuffer);
|
||||
|
||||
@ -69,6 +69,9 @@ public class TransportFrameDecoder extends ChannelInboundHandlerAdapter implemen
|
||||
break;
|
||||
}
|
||||
Message msg = Message.decode(curType, frame);
|
||||
if (msg.body() == null) {
|
||||
frame.release();
|
||||
}
|
||||
ctx.fireChannelRead(msg);
|
||||
clear();
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user