[ISSUE #9119] Invoke async should throw raw exception instead of CompletionException (#9120)

This commit is contained in:
gaoyf
2025-07-19 18:17:55 +08:00
committed by RongtongJin
parent 18a69d5169
commit 99cd998c84
@@ -49,6 +49,7 @@ import org.apache.rocketmq.common.Pair;
import org.apache.rocketmq.common.ServiceThread;
import org.apache.rocketmq.common.UtilAll;
import org.apache.rocketmq.common.constant.LoggerName;
import org.apache.rocketmq.common.utils.ExceptionUtils;
import org.apache.rocketmq.logging.org.slf4j.Logger;
import org.apache.rocketmq.logging.org.slf4j.LoggerFactory;
import org.apache.rocketmq.remoting.ChannelEventListener;
@@ -602,7 +603,7 @@ public abstract class NettyRemotingAbstract {
})
.thenAccept(responseFuture -> invokeCallback.operationSucceed(responseFuture.getResponseCommand()))
.exceptionally(t -> {
invokeCallback.operationFail(t);
invokeCallback.operationFail(ExceptionUtils.getRealException(t));
return null;
});
}