peterxcli opened a new pull request, #11404: URL: https://github.com/apache/ozone/pull/11404
## What changes were proposed in this pull request? Depends on #11403 (HDDS-16628), which is the first commit here; only the last commit belongs to this PR. In a 2-rack cluster where a whole rack is being decommissioned, containers stay under-replicated. The new replica has to go to a rack other than the existing replicas', the only other rack has no writable node, and placement fails. - `SCMContainerPlacementRackAware`: when the other racks also run out of retries and fallback is enabled, fall back to any rack, with new retries. - `MisReplicationHandler`: skip targets that do not reduce the mis-replication. Otherwise a fallback target on a rack that already has a replica makes the container over-replicated, the extra replica is deleted, and the container is mis-replicated again, over and over. Found with the SCM simulation (HDDS-16627). ## What is the link to the Apache JIRA https://issues.apache.org/jira/browse/HDDS-16629 ## How was this patch tested? New unit tests in `TestSCMContainerPlacementRackAware` and `TestRatisMisReplicationHandler`. With both changes, 100 seeds of the SCM simulation from #11349, over 2, 3, 4 and 12 racks, pass; without them, 6 of those seeds leave a decommission stuck. -- 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]
