Chris Trezzo created HDFS-9922:
----------------------------------

             Summary: Upgrade Domain placement policy status marks a good block 
in violation when there are decommissioned nodes
                 Key: HDFS-9922
                 URL: https://issues.apache.org/jira/browse/HDFS-9922
             Project: Hadoop HDFS
          Issue Type: Bug
            Reporter: Chris Trezzo
            Assignee: Chris Trezzo
            Priority: Minor


When there are replicas of a block on a decommissioned node, 
BlockPlacementStatusWithUpgradeDomain#isUpgradeDomainPolicySatisfied returns 
false when it should return true. This is because numberOfReplicas is the 
number of in-service replicas for the block and upgradeDomains.size() is the 
number of upgrade domains across all replicas of the block. Specifically, we 
hit this scenario when numberOfReplicas is equal to upgradeDomainFactor and 
upgradeDomains.size() is greater than numberOfReplicas.

{code}
private boolean isUpgradeDomainPolicySatisfied() {
    if (numberOfReplicas <= upgradeDomainFactor) {
      return (numberOfReplicas == upgradeDomains.size());
    } else {
      return upgradeDomains.size() >= upgradeDomainFactor;
    }
  }
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to