X-LightYear opened a new issue, #4952:
URL: https://github.com/apache/rocketmq-dashboard/issues/4952

   ## Problem
   
   The paginated topic endpoint builds the system-topic exclusions with 
`notLikeRight(RmqTopic::getName, "%RETRY%")` and 
`notLikeRight(RmqTopic::getName, "%DLQ%")`. MyBatis-Plus turns these into `NOT 
LIKE '%RETRY%%'` and `NOT LIKE '%DLQ%%'`, so the percent signs are interpreted 
as SQL wildcards.
   
   A legal user topic containing RETRY or DLQ anywhere in its name is therefore 
omitted from the paginated topic list and total.
   
   ## Reproduction
   
   1. Create a normal topic named `orders-RETRY-archive` or 
`orders-DLQ-archive`.
   2. Open the paginated Topic list without a search filter.
   3. Observe that the topic is absent from the results and total.
   
   ## Expected behavior
   
   Only topics whose names start with the literal RocketMQ system prefixes 
`%RETRY%` or `%DLQ%` should be excluded. Ordinary user topics containing RETRY 
or DLQ should remain visible.
   
   ## Evidence
   
   A deterministic regression test on current master captures the generated 
query parameters and fails because they are `%RETRY%%` and `%DLQ%%` instead of 
escaped literal prefixes.
   
   ## Scope
   
   This is limited to the hard-coded system-topic predicates in 
`RocketMQMetadataProvider.listTopicsPage`. The open wildcard-escaping PR #4458 
explicitly leaves these predicates unchanged, so it does not fix this path.
   


-- 
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]

Reply via email to