JiangHua Zhu created HDFS-16439:
-----------------------------------

             Summary: Makes calculating maxNodesPerRack simpler
                 Key: HDFS-16439
                 URL: https://issues.apache.org/jira/browse/HDFS-16439
             Project: Hadoop HDFS
          Issue Type: Improvement
          Components: namenode
    Affects Versions: 3.4.0
            Reporter: JiangHua Zhu


When creating a new file, it is usually necessary to communicate with the 
namenode first to obtain the location of some DataNodes as the target location 
of Blockd. At this time, when BlockPlacementPolicyDefault#getMaxNodesPerRack() 
is executed, if the number of replicas is very large, once it exceeds the 
number of all nodes in the cluster. The following piece of code will be 
executed:
       int clusterSize = clusterMap.getNumOfLeaves();
       int totalNumOfReplicas = numOfChosen + numOfReplicas;
if (totalNumOfReplicas > clusterSize) {
       numOfReplicas -= (totalNumOfReplicas-clusterSize);
       totalNumOfReplicas = clusterSize;
     }
Here, the calculation for numOfReplicas gets a little more complicated. It can 
be simplified like:
numOfReplicas = clusterSize - numOfChosen

It would be more helpful to understand it this way, while also freeing up a 
little cpu (though not a lot).



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to