diff options
author | Yiqun Lin <yqlin@apache.org> | 2018-05-18 10:43:53 +0800 |
---|---|---|
committer | Yiqun Lin <yqlin@apache.org> | 2018-05-18 10:43:53 +0800 |
commit | f749517cc78fc761cecff21e8b7f65fb719bfca2 (patch) | |
tree | 32076d1e01a58f0a5bdcf90bd25ce7b15c6d96f6 /hadoop-hdfs-project/hadoop-hdfs/src/main | |
parent | 8783613696674aba4ae1739c6e8f48cda0d1c386 (diff) |
HDFS-13573. Javadoc for BlockPlacementPolicyDefault is inaccurate. Contributed by Zsolt Venczel.
Diffstat (limited to 'hadoop-hdfs-project/hadoop-hdfs/src/main')
-rw-r--r-- | hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockPlacementPolicyDefault.java | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockPlacementPolicyDefault.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockPlacementPolicyDefault.java index a37cda4258..518e62c6b2 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockPlacementPolicyDefault.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/BlockPlacementPolicyDefault.java @@ -41,10 +41,15 @@ import com.google.common.annotations.VisibleForTesting; * The class is responsible for choosing the desired number of targets * for placing block replicas. * The replica placement strategy is that if the writer is on a datanode, - * the 1st replica is placed on the local machine, - * otherwise a random datanode. The 2nd replica is placed on a datanode - * that is on a different rack. The 3rd replica is placed on a datanode - * which is on a different node of the rack as the second replica. + * the 1st replica is placed on the local machine by default + * (By passing the {@link org.apache.hadoop.fs.CreateFlag#NO_LOCAL_WRITE} flag + * the client can request not to put a block replica on the local datanode. + * Subsequent replicas will still follow default block placement policy.). + * If the writer is not on a datanode, the 1st replica is placed on a random + * node. + * The 2nd replica is placed on a datanode that is on a different rack. + * The 3rd replica is placed on a datanode which is on a different node of the + * rack as the second replica. */ @InterfaceAudience.Private public class BlockPlacementPolicyDefault extends BlockPlacementPolicy { |