diff --git a/rocketmq-remoting/src/main/java/com/alibaba/rocketmq/remoting/netty/NettyRemotingAbstract.java b/rocketmq-remoting/src/main/java/com/alibaba/rocketmq/remoting/netty/NettyRemotingAbstract.java index bc7a992bb..e21b76390 100644 --- a/rocketmq-remoting/src/main/java/com/alibaba/rocketmq/remoting/netty/NettyRemotingAbstract.java +++ b/rocketmq-remoting/src/main/java/com/alibaba/rocketmq/remoting/netty/NettyRemotingAbstract.java @@ -247,8 +247,8 @@ public void processResponseCommand(ChannelHandlerContext ctx, RemotingCommand cm final ResponseFuture responseFuture = responseTable.get(cmd.getOpaque()); if (responseFuture != null) { responseFuture.setResponseCommand(cmd); - responseFuture.release(); + responseTable.remove(cmd.getOpaque()); if (responseFuture.getInvokeCallback() != null) { boolean runInThisThread = false; @@ -295,7 +295,6 @@ public void run() { plog.warn(cmd.toString()); } - responseTable.remove(cmd.getOpaque()); }