Xi Fang created HADOOP-9714:
-------------------------------

             Summary: Branch-1-win TestReplicationPolicy failed caused by stale 
data node handling
                 Key: HADOOP-9714
                 URL: https://issues.apache.org/jira/browse/HADOOP-9714
             Project: Hadoop Common
          Issue Type: Bug
    Affects Versions: 1-win
            Reporter: Xi Fang
            Assignee: Xi Fang
             Fix For: 1-win


Condor-Branch-1 TestReplicationPolicy failed on 
* testChooseTargetWithMoreThanAvailableNodes()
* testChooseTargetWithStaleNodes()
* testChooseTargetWithHalfStaleNodes()

The root of cause of testChooseTargetWithMoreThanAvailableNodes failing is the 
following:
In BlockPlacementPolicyDefault#chooseTarget()
{code}
  chooseRandom(numOfReplicas, NodeBase.ROOT, excludedNodes, 
        blocksize, maxNodesPerRack, results);
    } catch (NotEnoughReplicasException e) {
      FSNamesystem.LOG.warn("Not able to place enough replicas, still in need 
of " + numOfReplicas);
{code}
However, numOfReplicas is passed into chooseRandom() as int (primitive type in 
java) by value. The updating operation for numOfReplicas in chooseRandom() will 
not change the value in chooseTarget(). 

The root cause for testChooseTargetWithStaleNodes() and 
testChooseTargetWithHalfStaleNodes() is the current 
BlockPlacementPolicyDefault#chooseTarget() doesn't check if a node is stale.  

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to