[ https://issues.apache.org/jira/browse/HDFS-6898?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14114847#comment-14114847 ]
Zesheng Wu commented on HDFS-6898: ---------------------------------- Oh, sorry, I missed that detail in the patch. One more question, in the append() method : {code} ReplicaBeingWritten newReplicaInfo = new ReplicaBeingWritten( replicaInfo.getBlockId(), replicaInfo.getNumBytes(), newGS, v, newBlkFile.getParentFile(), Thread.currentThread(), estimateBlockLen); {code} Here reserves {{estimateBlockLen}} bytes {code} v.reserveSpaceForRbw(estimateBlockLen - replicaInfo.getNumBytes()); {code} Here reserves {{estimateBlockLen - replicaInfo.getNumBytes()}} bytes What's the difference between these two? > DN must reserve space for a full block when an RBW block is created > ------------------------------------------------------------------- > > Key: HDFS-6898 > URL: https://issues.apache.org/jira/browse/HDFS-6898 > Project: Hadoop HDFS > Issue Type: Bug > Components: datanode > Affects Versions: 2.5.0 > Reporter: Gopal V > Assignee: Arpit Agarwal > Attachments: HDFS-6898.01.patch, HDFS-6898.03.patch, > HDFS-6898.04.patch, HDFS-6898.05.patch > > > DN will successfully create two RBW blocks on the same volume even if the > free space is sufficient for just one full block. > One or both block writers may subsequently get a DiskOutOfSpace exception. > This can be avoided by allocating space up front. -- This message was sent by Atlassian JIRA (v6.2#6252)