You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by ha...@apache.org on 2008/05/31 01:29:25 UTC

svn commit: r661912 - in /hadoop/core/trunk: CHANGES.txt src/java/org/apache/hadoop/dfs/FSNamesystem.java

Author: hairong
Date: Fri May 30 16:29:25 2008
New Revision: 661912

URL: http://svn.apache.org/viewvc?rev=661912&view=rev
Log:
HADOOP-2159. Name node should not decrment blockSafe for invalid blocks. Contributed by Hairong Kuang.

Modified:
    hadoop/core/trunk/CHANGES.txt
    hadoop/core/trunk/src/java/org/apache/hadoop/dfs/FSNamesystem.java

Modified: hadoop/core/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/CHANGES.txt?rev=661912&r1=661911&r2=661912&view=diff
==============================================================================
--- hadoop/core/trunk/CHANGES.txt (original)
+++ hadoop/core/trunk/CHANGES.txt Fri May 30 16:29:25 2008
@@ -359,6 +359,9 @@
 
     HADOOP-3401. Update FileBench to set the new
     "mapred.work.output.dir" property to work post-3041. (cdouglas via omalley)
+
+    HADOOP-2159 Namenode stuck in safemode. The counter blockSafe should
+    not be decremented for invalid blocks. (hairong)
  
 Release 0.17.0 - 2008-05-18
 

Modified: hadoop/core/trunk/src/java/org/apache/hadoop/dfs/FSNamesystem.java
URL: http://svn.apache.org/viewvc/hadoop/core/trunk/src/java/org/apache/hadoop/dfs/FSNamesystem.java?rev=661912&r1=661911&r2=661912&view=diff
==============================================================================
--- hadoop/core/trunk/src/java/org/apache/hadoop/dfs/FSNamesystem.java (original)
+++ hadoop/core/trunk/src/java/org/apache/hadoop/dfs/FSNamesystem.java Fri May 30 16:29:25 2008
@@ -2926,7 +2926,6 @@
       return;
     }
         
-    decrementSafeBlockCount(block);
     //
     // It's possible that the block was removed because of a datanode
     // failure.  If the block is still valid, check if replication is
@@ -2935,6 +2934,7 @@
     //
     INode fileINode = blocksMap.getINode(block);
     if (fileINode != null) {
+      decrementSafeBlockCount(block);
       updateNeededReplications(block, -1, 0);
     }