The GitHub Actions job "Build and Run Tests by Bazel" on 
rocketmq.git/fix/order-topic-conf-malformed-parse has failed.
Run started by GitHub user zjncs (triggered by zjncs).

Head commit for run:
eaeb002cc1de76571459e4c5c591d6f4d17e1499 / zjncs <[email protected]>
[ISSUE #D20] Skip malformed orderTopicConf segments in 
topicRouteData2TopicPublishInfo

The order topic conf is a manually maintained name server kv config
(ORDER_TOPIC_CONFIG namespace) delivered to clients inside TopicRouteData.
topicRouteData2TopicPublishInfo splits each 'brokerName:queueNums' segment
with split(":") and parses item[1] as an int without any validation, so a
single typo in the kv value (a segment without ':', or a non-numeric queue
count) makes the conversion throw ArrayIndexOutOfBoundsException or
NumberFormatException.

These unchecked exceptions escape updateTopicRouteInfoFromNameServer,
whose inner catch only handles MQClientException/RemotingException: the
producer send path surfaces a raw NumberFormatException from send(), and
the periodic route refresh task aborts the whole per-cycle topic loop, so
other topics lose their refresh too. The route table is never updated, so
every retry fails the same way until the kv config is corrected.

Skip malformed segments with a warn log instead, so one bad segment cannot
take down the route conversion for the whole topic.

Signed-off-by: zjncs <[email protected]>

Report URL: https://github.com/apache/rocketmq/actions/runs/34475038377

With regards,
GitHub Actions via GitBox

Reply via email to