pilichoumao opened a new issue, #6503:
URL: https://github.com/apache/rocketmq-dashboard/issues/6503

   ### What happened?
   
   On `rocketmq-studio` at `779b8c0e7aed2396d3cc72743dcd544ea48e9ae6`, Topic 
route diagnostics count a Broker as writable/readable using only its permission 
flags and queue counts. The Topic detail modal labels those counts “Writable 
Brokers” and “Readable Brokers”.
   
   An Apache route containing only a slave address (`brokerAddrs={1:slave}`, no 
`masterAddr`, RW permission, eight queues) is counted as one writable Broker 
and does not produce `NO_WRITABLE_ROUTE`. A queue-metadata row without any 
Broker address is counted as both readable and writable.
   
   `RocketMQMetadataProvider.getTopicRoutes` preserves these topology states; 
its `writable`/`readable` flags describe permissions. RocketMQ 5.5.0's ordinary 
publish-route conversion skips BrokerData without MASTER_ID. A slave fallback 
in `brokerAddr` therefore must not be treated as a publish address.
   
   ### Reproduction and evidence
   
   Seven deterministic checks against the actual frontend utility on Linux ECS 
give five failing assertions and two passing controls. A temporary 
address-aware coverage prototype passes all seven checks, the existing five 
utility tests and TypeScript checking. The test inputs match the provider's VO 
shape; no live Broker fault was injected.
   
   ### Expected behavior and proposed scope
   
   Keep raw queue metadata and permission flags unchanged. Count write coverage 
only when permission, a positive queue count and a Master address are present; 
preserve read coverage through a slave, but do not count address-less rows as 
readable. Update topic-level verdict descriptions and the UI explanation so 
that address availability is distinguished from permission and network 
reachability. Preserve legacy payload behavior when detailed topology fields 
are absent.
   
   This follows up the route diagnostics in #2836 and the master-address 
projection consolidated in #1025. It does not reimplement #6093's failed-load 
handling or #5566's broader translation work. Static/ordered topic semantics 
and legacy fixtures will be checked before finalizing the patch.
   


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