Vinay created HDFS-5146:
---------------------------

             Summary: JspHelper#bestNode() doesn't handle bad datanodes 
correctly
                 Key: HDFS-5146
                 URL: https://issues.apache.org/jira/browse/HDFS-5146
             Project: Hadoop HDFS
          Issue Type: Bug
    Affects Versions: 2.1.0-beta, 3.0.0
            Reporter: Vinay
            Assignee: Vinay


JspHelper#bestNode() doesn't handle bad datanodes correctly if the chosen 
datanode is down.

{code}    while (s == null) {
      if (chosenNode == null) {
        do {
          if (doRandom) {
            index = DFSUtil.getRandom().nextInt(nodes.length);
          } else {
            index++;
          }
          chosenNode = nodes[index];
        } while (deadNodes.contains(chosenNode));
      }
      chosenNode = nodes[index];
{code}

In this part of the code, choosing the datanode will be done only once.
If the chosen datanode is down, then definitely exception will be thrown 
instead of re-chosing the available node.

--
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