You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Ted Yu (JIRA)" <ji...@apache.org> on 2011/05/11 21:58:47 UTC

[jira] [Updated] (HDFS-1332) When unable to place replicas, BlockPlacementPolicy should log reasons nodes were excluded

     [ https://issues.apache.org/jira/browse/HDFS-1332?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ted Yu updated HDFS-1332:
-------------------------

    Attachment: HDFS-1332.patch

throwNotEnoughReplicasExceptionWithReason() composes the string containing flattened (data node, reason string) pairs. It returns DatanodeDescriptor so that the following method compiles:
{code}
  private DatanodeDescriptor chooseRandom(
                                          String nodes,
                                          HashMap<Node, Node> excludedNodes,
                                          long blocksize,
                                          int maxNodesPerRack,
                                          List<DatanodeDescriptor> results) 
{code}

isGoodTarget() now returns reason string if the data node isn't a good target. Otherwise null is returned.

> When unable to place replicas, BlockPlacementPolicy should log reasons nodes were excluded
> ------------------------------------------------------------------------------------------
>
>                 Key: HDFS-1332
>                 URL: https://issues.apache.org/jira/browse/HDFS-1332
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: name-node
>            Reporter: Todd Lipcon
>            Assignee: Ted Yu
>            Priority: Minor
>              Labels: newbie
>         Attachments: HDFS-1332.patch
>
>
> Whenever the block placement policy determines that a node is not a "good target" it could add the reason for exclusion to a list, and then when we log "Not able to place enough replicas" we could say why each node was refused. This would help new users who are having issues on pseudo-distributed (eg because their data dir is on /tmp and /tmp is full). Right now it's very difficult to figure out the issue.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira