Benjamin Teke created YARN-10807:
------------------------------------

             Summary: Parent node labels are incorrectly added to child queues 
in weight mode 
                 Key: YARN-10807
                 URL: https://issues.apache.org/jira/browse/YARN-10807
             Project: Hadoop YARN
          Issue Type: Sub-task
            Reporter: Benjamin Teke
            Assignee: Benjamin Teke


In ParentQueue.updateClusterResource when calculating the normalized weights CS 
will iterate through the parent's nodelabels. If the parent has a node label 
that a specific child doesn't it will incorrectly added to the child's node 
label list through the queueCapacities.setNormalizedWeights(label, weight) call:


{code:java}
// Normalize weight of children
      if (getCapacityConfigurationTypeForQueues(childQueues)
          == QueueCapacityType.WEIGHT) {
        for (String nodeLabel : queueCapacities.getExistingNodeLabels()) {
          float sumOfWeight = 0;

          for (CSQueue queue : childQueues) {
            float weight = Math.max(0,
                queue.getQueueCapacities().getWeight(nodeLabel));
            sumOfWeight += weight;
          }
          // When sum of weight == 0, skip setting normalized_weight (so
          // normalized weight will be 0).
          if (Math.abs(sumOfWeight) > 1e-6) {
            for (CSQueue queue : childQueues) {
                queue.getQueueCapacities().setNormalizedWeight(nodeLabel,
                    queue.getQueueCapacities().getWeight(nodeLabel) / 
sumOfWeight);
            }
          }
        }
      }
{code}




--
This message was sent by Atlassian Jira
(v8.3.4#803005)

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

Reply via email to