[
https://issues.apache.org/jira/browse/HDFS-5828?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13887509#comment-13887509
]
Junping Du commented on HDFS-5828:
----------------------------------
Thanks for nice catch, Buddy!
Patch looks good to me overall, only a tiny thing for change on test file:
{code}
CONF.setBoolean(DFS_NAMENODE_AVOID_STALE_DATANODE_FOR_WRITE_KEY, true);
{code}
Would you replace it to something below, so we can remove the unnecessary
import as keeping consistent with other places?
{code}
CONF.setBoolean(DFSConfigKeys.DFS_NAMENODE_AVOID_STALE_DATANODE_FOR_WRITE_KEY,
true);
{code}
Will +1 once this is addressed.
> BlockPlacementPolicyWithNodeGroup can place multiple replicas on the same
> node group when dfs.namenode.avoid.write.stale.datanode is true
> -----------------------------------------------------------------------------------------------------------------------------------------
>
> Key: HDFS-5828
> URL: https://issues.apache.org/jira/browse/HDFS-5828
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: namenode
> Affects Versions: 2.3.0
> Reporter: Buddy
> Attachments: HDFS-5828.patch
>
>
> When placing replicas using the replica placement policy
> BlockPlacementPolicyWithNodeGroup, the number of targets returned should be
> less than or equal to the number of node groups and no node group should get
> two replicas of the same block. The Junit test
> TestReplicationPolicyWithNodeGroup.testChooseMoreTargetsThanNodeGroups
> verifies this.
> However, if the conf property "dfs.namenode.avoid.write.stale.datanode" is
> set to true, then block placement policy will return more targets than node
> groups when the number of replicas requested exceeds the number of node
> groups.
> This can be seen by putting:
> CONF.setBoolean(DFS_NAMENODE_AVOID_STALE_DATANODE_FOR_WRITE_KEY, true);
> in the setup method for TestReplicationPolicyWithNodeGroup. This will cause
> testChooseMoreTargetsThanNodeGroups to fail.
--
This message was sent by Atlassian JIRA
(v6.1.5#6160)