This is an automated email from the ASF dual-hosted git repository.
yx9o pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/rocketmq.git
The following commit(s) were added to refs/heads/develop by this push:
new 7e0cec35a2 [ISSUE #10425] Revert split registration dataVersion change
(#10426)
7e0cec35a2 is described below
commit 7e0cec35a20e10f46cbc7984773bbd72813b937b
Author: rongtong <[email protected]>
AuthorDate: Fri Jun 5 09:17:40 2026 +0800
[ISSUE #10425] Revert split registration dataVersion change (#10426)
---
.../apache/rocketmq/broker/topic/TopicConfigManager.java | 3 +++
.../rocketmq/broker/topic/TopicConfigManagerTest.java | 14 ++++++++++++++
2 files changed, 17 insertions(+)
diff --git
a/broker/src/main/java/org/apache/rocketmq/broker/topic/TopicConfigManager.java
b/broker/src/main/java/org/apache/rocketmq/broker/topic/TopicConfigManager.java
index cce38da0b2..b481242b12 100644
---
a/broker/src/main/java/org/apache/rocketmq/broker/topic/TopicConfigManager.java
+++
b/broker/src/main/java/org/apache/rocketmq/broker/topic/TopicConfigManager.java
@@ -647,6 +647,9 @@ public class TopicConfigManager extends ConfigManager {
topicConfigWrapper.setTopicConfigTable(topicConfigTable);
topicConfigWrapper.setTopicQueueMappingInfoMap(topicQueueMappingInfoMap);
topicConfigWrapper.setDataVersion(this.getDataVersion());
+ if
(this.brokerController.getBrokerConfig().isEnableSplitRegistration()) {
+ this.getDataVersion().nextVersion();
+ }
return topicConfigWrapper;
}
diff --git
a/broker/src/test/java/org/apache/rocketmq/broker/topic/TopicConfigManagerTest.java
b/broker/src/test/java/org/apache/rocketmq/broker/topic/TopicConfigManagerTest.java
index 5b2ea0b4d5..af1066a4d0 100644
---
a/broker/src/test/java/org/apache/rocketmq/broker/topic/TopicConfigManagerTest.java
+++
b/broker/src/test/java/org/apache/rocketmq/broker/topic/TopicConfigManagerTest.java
@@ -38,6 +38,7 @@ import
org.apache.rocketmq.common.attribute.LongRangeAttribute;
import org.apache.rocketmq.common.constant.PermName;
import org.apache.rocketmq.common.utils.QueueTypeUtils;
import org.apache.rocketmq.remoting.protocol.DataVersion;
+import
org.apache.rocketmq.remoting.protocol.body.TopicConfigAndMappingSerializeWrapper;
import org.apache.rocketmq.store.DefaultMessageStore;
import org.apache.rocketmq.store.config.MessageStoreConfig;
import org.junit.Assert;
@@ -400,4 +401,17 @@ public class TopicConfigManagerTest {
Assert.assertFalse(result.containsKey(String.format("topic%05d",
beginIndex - 1)));
Assert.assertFalse(result.containsKey(String.format("topic%05d",
endIndex + 1)));
}
+
+ @Test
+ public void
testBuildSerializeWrapperUpdatesDataVersionWhenSplitRegistrationEnabled() {
+ brokerController.getBrokerConfig().setEnableSplitRegistration(true);
+ long counterBefore =
topicConfigManager.getDataVersion().getCounter().get();
+
+ TopicConfigAndMappingSerializeWrapper wrapper =
+
topicConfigManager.buildSerializeWrapper(topicConfigManager.getTopicConfigTable());
+
+ long counterAfter =
topicConfigManager.getDataVersion().getCounter().get();
+ Assert.assertEquals(counterBefore + 1, counterAfter);
+ Assert.assertEquals(counterAfter,
wrapper.getDataVersion().getCounter().get());
+ }
}