فهرست منبع

HADOOP-4778. Check for zero size block meta file when updating a block. (szetszwo)

git-svn-id: https://svn.apache.org/repos/asf/hadoop/core/branches/branch-0.18@723884 13f79535-47bb-0310-9956-ffa450edef68
Tsz-wo Sze 16 سال پیش
والد
کامیت
81a2b817e3
2فایلهای تغییر یافته به همراه6 افزوده شده و 0 حذف شده
  1. 3 0
      CHANGES.txt
  2. 3 0
      src/hdfs/org/apache/hadoop/dfs/FSDataset.java

+ 3 - 0
CHANGES.txt

@@ -78,6 +78,9 @@ Release 0.18.3 - Unreleased
     HADOOP-4717. Removal of default port# in NameNode.getUri() causes a
     HADOOP-4717. Removal of default port# in NameNode.getUri() causes a
     map/reduce job failed to prompt temporary output. (hairong)
     map/reduce job failed to prompt temporary output. (hairong)
 
 
+    HADOOP-4778. Check for zero size block meta file when updating a block.
+    (szetszwo)
+
 Release 0.18.2 - 2008-11-03
 Release 0.18.2 - 2008-11-03
 
 
   BUG FIXES
   BUG FIXES

+ 3 - 0
src/hdfs/org/apache/hadoop/dfs/FSDataset.java

@@ -1165,6 +1165,9 @@ class FSDataset implements FSConstants, FSDatasetInterface {
                             " metafile " + meta +
                             " metafile " + meta +
                             " does not exist on disk.");
                             " does not exist on disk.");
     }
     }
+    if (meta.length() == 0) {
+      throw new IOException("Block " + b + " metafile " + meta + " is empty.");
+    }
     long stamp = parseGenerationStamp(f, meta);
     long stamp = parseGenerationStamp(f, meta);
     if (stamp != b.getGenerationStamp()) {
     if (stamp != b.getGenerationStamp()) {
       throw new IOException("Block " + b + 
       throw new IOException("Block " + b +