[ https://issues.apache.org/jira/browse/HDFS-9673?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Lin Yiqun updated HDFS-9673: ---------------------------- Status: Patch Available (was: Open) Attach a initial patch, kindly reviewing! > Incomplete annotation in FSNamesystem#checkFileProgress > ------------------------------------------------------- > > Key: HDFS-9673 > URL: https://issues.apache.org/jira/browse/HDFS-9673 > Project: Hadoop HDFS > Issue Type: Bug > Affects Versions: 2.7.1 > Reporter: Lin Yiqun > Assignee: Lin Yiqun > Priority: Trivial > > In method {{FSNamesystem#checkFileProgress}}, the annotation of this method > is not complete. When check penultimate block and the penultimate block not > exist, it will also return true. But the annotation of this special case is > not referred. And that will be misunderstanding for users. The current > annotation of method {{checkFileProgress}}: > {code} > /** > * Check that the indicated file's blocks are present and > * replicated. If not, return false. If checkall is true, then check > * all blocks, otherwise check only penultimate block. > */ > boolean checkFileProgress(String src, INodeFile v, boolean checkall) { > assert hasReadLock(); > if (checkall) { > return blockManager.checkBlocksProperlyReplicated(src, v > .getBlocks()); > } else { > // check the penultimate block of this file > BlockInfo b = v.getPenultimateBlock(); > return b == null || > blockManager.checkBlocksProperlyReplicated( > src, new BlockInfo[] { b }); > } > } > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)