FSImage saveFSImage() will have problem. ----------------------------------------
Key: HADOOP-4771 URL: https://issues.apache.org/jira/browse/HADOOP-4771 Project: Hadoop Core Issue Type: Bug Components: dfs Affects Versions: 0.19.0, 0.19.1, 0.20.0 Reporter: Ruyue Ma Fix For: 0.19.1, 0.20.0 Now the directory doesn't have replication factor. so in FSImage.saveFsImage(). When you format the namenode , hadoop will call FSImage.saveFsImage(). saveFsImage includes the following code: out.writeLong(fsDir.rootDir.numItemsInTree()); When format, the fsDir.rootDir.numItemsInTree() should be 1 (it include the rootdir). But now fsDir.rootDir.numItemsInTree() is 0. The reason why the bug is not simply discovered or triggered is the code in FSImage.saveFsImage().->saveINode2Image(). } else { // write directory inode out.writeShort(0); // replication Because the directory doesn't have replication factor, so here is 0. This will cause loadFilesUnderConstruction() will load any files when hadoop fisrt starts up after format. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.