123123213weqw opened a new pull request, #745:
URL: https://github.com/apache/rocketmq-dashboard/pull/745
### Problem
`ClusterServiceImpl.list()` fetched every broker's runtime stats inside one
big `try` block:
```java
for (Map.Entry<Long, String> brokerAddr :
brokerData.getBrokerAddrs().entrySet()) {
KVTable kvTable =
mqAdminExt.fetchBrokerRuntimeStats(brokerAddr.getValue());
brokerMasterSlaveMap.put(brokerAddr.getKey(), kvTable.getTable());
}
```
If **any one** broker is temporarily unreachable, `fetchBrokerRuntimeStats`
throws, the exception propagates to the outer catch, and the entire Cluster
page fails — even though all the other brokers are healthy and their data is
available.
### Fix
Fetch each broker's runtime stats in its own `try/catch` and skip the
brokers that fail (logging a warning). This is consistent with how
`DashboardCollectTask.collectBroker` already handles per-broker failures (it
skips brokers whose stats cannot be fetched).
### Verification
`mvn compiler:compile` passes (`BUILD SUCCESS`).
### Diff
1 file changed, +7 / -2.
--
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]