smengcl opened a new pull request, #11682: URL: https://github.com/apache/ozone/pull/11682
Generated-by: Claude Code (Opus 5.5) ## What changes were proposed in this pull request? With a single OM, the OM client increases the wait time between retries linearly and without a cap when the OM is not reachable, because round robin failover selects the same OM again and `getWaitTime` treats that as a retry on the same OM requested by the OM. A client started before OM is ready (e.g. right after starting a Docker Compose cluster) can keep sleeping long after OM is up. This change checks whether all OMs were attempted in the current round first, so a single OM gets the same fixed wait as a full round over multiple OMs. Retries on the same OM requested by the OM (e.g. `OMLeaderNotReadyException`) still increase the wait time. Behavior with multiple OMs is unchanged. ## What is the link to the Apache JIRA https://issues.apache.org/jira/browse/HDDS-17302 ## How was this patch tested? Added `TestOMFailoverProxyProvider#testWaitTimeWithSingleNode`, which fails without the fix. Existing failover proxy provider and transport unit tests pass. 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
