RockteMQ-AI commented on issue #1754: URL: https://github.com/apache/rocketmq-dashboard/issues/1754#issuecomment-5253561855
**Issue Evaluation** Category: `bug` | Status: **Confirmed** The AdminClient cache eviction logic incorrectly uses only the endpoint (NameServer address) as the cache key for release operations, while the cache is actually keyed by the composite `(endpoint, credential reference)`. This mismatch causes two problems: 1. **Over-eviction on credential change:** Releasing by endpoint alone shuts down AdminClient instances still in use by other credentials sharing the same endpoint. 2. **Under-eviction on endpoint change/delete:** When an instance is deleted or its endpoint changes, the credential-specific AdminClient entry is never cleaned up if the endpoint is still shared. **Root Cause:** `MqAdminExtFactory.release(namesrvAddr)` operates at endpoint granularity, but the cache is keyed by `(endpoint, credential)`. The release logic needs to be credential-aware. **Impact:** Credential rotation can break other instances sharing the same NameServer endpoint. Instance deletion leaks cached AdminClient connections. **Severity:** **high** — affects multi-tenant/multi-credential deployments, causes connection leaks **Proposed Fix:** Update the release/eviction logic to operate on the full `(endpoint, credential reference)` composite key, ensuring only the specific identity is evicted while shared entries remain cached. An automated fix proposal can be generated. Reply `/approve` to proceed with PR generation. --- *Automated evaluation by RockteMQ-AI* -- 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]
