Repository: hadoop Updated Branches: refs/heads/branch-2.8 354801fe6 -> f872d519d
HDFS-10186. DirectoryScanner: Improve logs by adding full path of both actual and expected block directories. Contributed by Rakesh R Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/f872d519 Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/f872d519 Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/f872d519 Branch: refs/heads/branch-2.8 Commit: f872d519dbe57d117ef335749f1ef824d2396704 Parents: 354801f Author: Tsz-Wo Nicholas Sze <szets...@hortonworks.com> Authored: Thu Apr 7 12:36:29 2016 +0800 Committer: Tsz-Wo Nicholas Sze <szets...@hortonworks.com> Committed: Thu Apr 7 12:42:27 2016 +0800 ---------------------------------------------------------------------- .../hadoop/hdfs/server/datanode/DirectoryScanner.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/hadoop/blob/f872d519/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DirectoryScanner.java ---------------------------------------------------------------------- diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DirectoryScanner.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DirectoryScanner.java index 392c121..5da0eaf 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DirectoryScanner.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DirectoryScanner.java @@ -891,8 +891,7 @@ public class DirectoryScanner implements Runnable { break; } } - verifyFileLocation(blockFile.getParentFile(), bpFinalizedDir, - blockId); + verifyFileLocation(blockFile, bpFinalizedDir, blockId); report.add(new ScanInfo(blockId, blockFile, metaFile, vol)); } return report; @@ -902,12 +901,15 @@ public class DirectoryScanner implements Runnable { * Verify whether the actual directory location of block file has the * expected directory path computed using its block ID. */ - private void verifyFileLocation(File actualBlockDir, + private void verifyFileLocation(File actualBlockFile, File bpFinalizedDir, long blockId) { File blockDir = DatanodeUtil.idToBlockDir(bpFinalizedDir, blockId); - if (actualBlockDir.compareTo(blockDir) != 0) { + if (actualBlockFile.getParentFile().compareTo(blockDir) != 0) { + File expBlockFile = new File(blockDir, actualBlockFile.getName()); LOG.warn("Block: " + blockId - + " has to be upgraded to block ID-based layout"); + + " has to be upgraded to block ID-based layout. " + + "Actual block file path: " + actualBlockFile + + ", expected block file path: " + expBlockFile); } }