jokerzsd opened a new pull request, #11165: URL: https://github.com/apache/rocketmq/pull/11165
## What is the purpose of the change Fixes #11158. `KeyBuilder.buildPopRetryTopicV2()` generates V2 pop retry topics using `+` as the separator between the consumer group and topic (`POP_RETRY_SEPARATOR_V2`), producing names like `%RETRY%<cid>+<topic>`. However `TopicValidator.VALID_CHAR_BIT_MAP` did not include `+`, so brokers with `enableRetryTopicV2=true` rejected these generated topics with "contains illegal characters". ## Brief changelog - Add `+` to `TopicValidator.VALID_CHAR_BIT_MAP`. - Update the "allowing only" regex in both error messages from `^[%|a-zA-Z0-9_-]+$` to `^[%|a-zA-Z0-9_+-]+$`. - Add a regression test verifying `%RETRY%GID_test+normal_topic` is valid. ## Verifying this change `mvn -f common/pom.xml test -Dtest=TopicValidatorTest` — all 10 tests pass. -- 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]
