From 031687dbd78df0c52f1b2a73a7e12b203453128f Mon Sep 17 00:00:00 2001 From: Ji Juntao Date: Thu, 17 Oct 2024 19:16:14 +0800 Subject: [PATCH] [ISSUE #8835] When ck is in the buffer, incomplete ack will lead to message duplication. (#8836) * add brokerName in ackMsg * add brokerName in ackMsg --- .../apache/rocketmq/broker/processor/PopBufferMergeService.java | 1 + 1 file changed, 1 insertion(+) diff --git a/broker/src/main/java/org/apache/rocketmq/broker/processor/PopBufferMergeService.java b/broker/src/main/java/org/apache/rocketmq/broker/processor/PopBufferMergeService.java index e05ab8ebeae..9f10b483ddb 100644 --- a/broker/src/main/java/org/apache/rocketmq/broker/processor/PopBufferMergeService.java +++ b/broker/src/main/java/org/apache/rocketmq/broker/processor/PopBufferMergeService.java @@ -644,6 +644,7 @@ private void putAckToStore(final PopCheckPointWrapper pointWrapper, byte msgInde ackMsg.setTopic(point.getTopic()); ackMsg.setQueueId(point.getQueueId()); ackMsg.setPopTime(point.getPopTime()); + ackMsg.setBrokerName(point.getBrokerName()); msgInner.setTopic(popMessageProcessor.reviveTopic); msgInner.setBody(JSON.toJSONString(ackMsg).getBytes(DataConverter.CHARSET_UTF8)); msgInner.setQueueId(pointWrapper.getReviveQueueId());