This is an automated email from the ASF dual-hosted git repository.

adoroszlai pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ozone.git


The following commit(s) were added to refs/heads/master by this push:
     new 45e8c5c45a HDDS-8383. Misreplication cannot be resolved with single 
rack (#4539)
45e8c5c45a is described below

commit 45e8c5c45a01f75ccbda866a68712d61cce1450f
Author: Doroszlai, Attila <[email protected]>
AuthorDate: Tue Apr 11 18:38:38 2023 +0200

    HDDS-8383. Misreplication cannot be resolved with single rack (#4539)
---
 .../placement/algorithms/SCMContainerPlacementRackAware.java         | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git 
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/placement/algorithms/SCMContainerPlacementRackAware.java
 
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/placement/algorithms/SCMContainerPlacementRackAware.java
index 4f07024f16..4d880345ec 100644
--- 
a/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/placement/algorithms/SCMContainerPlacementRackAware.java
+++ 
b/hadoop-hdds/server-scm/src/main/java/org/apache/hadoop/hdds/scm/container/placement/algorithms/SCMContainerPlacementRackAware.java
@@ -386,6 +386,9 @@ public final class SCMContainerPlacementRackAware
 
   @Override
   protected int getRequiredRackCount(int numReplicas) {
-    return REQUIRED_RACKS;
+    int racks = networkTopology != null
+        ? networkTopology.getNumOfNodes(networkTopology.getMaxLevel() - 1)
+        : 1;
+    return Math.min(REQUIRED_RACKS, racks);
   }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to