RongtongJin opened a new issue, #10425: URL: https://github.com/apache/rocketmq/issues/10425
### Before Creating the Bug Report - [x] I found a bug, not just asking a question, which should be created in GitHub Discussions. - [x] I have searched the GitHub Issues and GitHub Discussions of this repository and believe that this is not a duplicate. - [x] I have confirmed that this bug belongs to the current repository, not other repositories of RocketMQ. ### Runtime platform environment All platforms when broker split registration is enabled. ### RocketMQ version `develop` after #9521 / commit `2accb9797771b9395d427eef1d6a7982f27b8dfc`. ### JDK Version Not JDK-specific. ### Describe the Bug #9521 removed the `DataVersion` advancement from `TopicConfigManager#buildSerializeWrapper` when `enableSplitRegistration` is enabled. During split broker registration, `BrokerController#registerBrokerAll` sends topic configs in multiple `RegisterBrokerBody` requests. `RouteInfoManager#registerBroker` stores the broker `DataVersion` after each request and uses it to decide whether topic queue data needs to be updated. If every split request carries the same `DataVersion`, the later split requests can be treated as unchanged for topics that already exist under the broker, so topic config updates in those later batches may be skipped. ### Steps to Reproduce 1. Enable broker split registration with `enableSplitRegistration=true` and configure enough topics to require multiple registration batches. 2. Let the broker register once so the name server already has route data for those topics. 3. Update topic configs for topics that are not in the first split batch. 4. Trigger broker registration again. ### What Did You Expect to See? Every split registration batch should be processed as a topic config update, so name server route data reflects updated topic configs from all batches. ### What Did You See Instead? Only batches that are considered changed by `DataVersion` are guaranteed to update existing topic route data. Later split batches with the same `DataVersion` can be skipped for existing topics. ### Additional Context Reverting #9521 restores the previous behavior where each split registration wrapper advances the topic config `DataVersion`, so each batch is visible as a distinct update to the name server. -- 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]
