FantasyChen-DH commented on code in PR #6337:
URL: https://github.com/apache/rocketmq/pull/6337#discussion_r1150614978
##########
remoting/src/main/java/org/apache/rocketmq/remoting/netty/NettyRemotingAbstract.java:
##########
@@ -355,19 +355,22 @@ private Runnable
buildProcessRequestHandler(ChannelHandlerContext ctx, RemotingC
public void processResponseCommand(ChannelHandlerContext ctx,
RemotingCommand cmd) {
final int opaque = cmd.getOpaque();
final ResponseFuture responseFuture = responseTable.get(opaque);
+ final String remoteAddr = ctx == null ? "" :
RemotingHelper.parseChannelRemoteAddr(ctx.channel());
if (responseFuture != null) {
responseFuture.setResponseCommand(cmd);
responseTable.remove(opaque);
+ doAfterRpcHooks(remoteAddr, responseFuture.getRequestCommand(),
cmd);
Review Comment:
you mean maybe call this method twice due to network error such as receiving
the same response at the same time, or other reasons? In my opinion, each
execution will release the responseFuture so that it should not be executed
multiple times.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]