The GitHub Actions job "Build and Run Tests by Maven" on 
rocketmq.git/worktree-fix-10559 has failed.
Run started by GitHub user Aias00 (triggered by Aias00).

Head commit for run:
a26ffbb552eea3def59836c49844b16b16d5891a / liuhy <[email protected]>
[ISSUE #10607] Fix wildcard pattern dispatch gaps for new lite-topics

Address review findings on the wildcard pattern matching feature (#10559):

1. Pattern→legacy/non-wildcard transition left stale wildcardPatterns on the
   LiteSubscription, so doFullDispatchForWildcardGroup / 
reexpandWildcardPatterns
   (which key off a non-empty wildcardPatterns set) kept misclassifying the 
client
   as pattern-mode. Now clear wildcardPatterns in both the legacy-wildcard and
   non-wildcard branches of addCompleteSubscription.

2. A pattern-mode client was not delivered a newly-created matching lite-topic 
on
   the normal message-arriving dispatch path — it only got picked up by the 
periodic
   doFullDispatchForWildcardGroup re-expand, causing delivery delay/loss. Add
   LiteSubscriptionRegistry#registerArrivingLmqForPatternClients(lmqName): on 
the
   message-arriving path (group == null) it enumerates the parent topic's
   pattern-mode clients, matches their stored patterns against the single 
arriving
   lmqName's child (no O(M) collectByParentTopic scan), and registers matches 
via
   addTopicGroup so the immediately-following getAllSubscriber finds them. The
   periodic re-expand remains as a backstop.

3. Nit: wildcard COMPLETE_ADD now passes Collections.emptySet() for lmqNameSet
   (pattern-mode registration ignores it; lmqNames are derived by expanding 
patterns).

CI note: bazel-compile BrokerShutdownTest TIMEOUT and macOS ServiceThreadTest
stress flake are pre-existing and unrelated (neither test is in this diff nor
touches lite/wildcard code).

Co-Authored-By: Claude <[email protected]>

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

With regards,
GitHub Actions via GitBox

Reply via email to