[ https://issues.apache.org/jira/browse/HDFS-4557?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13595487#comment-13595487 ]
Tsz Wo (Nicholas), SZE commented on HDFS-4557: ---------------------------------------------- For destroyAndCollectBlocks, how about handling FileWithSnapshot in INodeFile? Then, we don't need to repeat the code in INodeFileWithSnapshot and INodeFileUnderConstructionWithSnapshot. > Fix FSDirectory#delete when INode#cleanSubtree returns 0 > -------------------------------------------------------- > > Key: HDFS-4557 > URL: https://issues.apache.org/jira/browse/HDFS-4557 > Project: Hadoop HDFS > Issue Type: Sub-task > Components: datanode, namenode > Reporter: Jing Zhao > Assignee: Jing Zhao > Priority: Minor > Attachments: HDFS-4557.000.patch, HDFS-4557.001.patch, > HDFS-4557.002.patch > > > Currently INode#cleanSubtree is used to delete files/directories and collect > corresponding blocks for future deletion. Its return value can be 0 even if > file/dir has been deleted because we save snapshot copies. This breaks the > original logic in FSDirectory#delete since FSDirectory#delete expects a > positive value from a successful deletion. -- 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