You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-commits@hadoop.apache.org by sh...@apache.org on 2011/12/28 21:58:33 UTC
svn commit: r1225333 - in /hadoop/common/branches/branch-0.22/hdfs:
CHANGES.txt src/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java
src/test/hdfs/org/apache/hadoop/hdfs/server/namenode/TestBackupNode.java
Author: shv
Date: Wed Dec 28 20:58:32 2011
New Revision: 1225333
URL: http://svn.apache.org/viewvc?rev=1225333&view=rev
Log:
HDFS-1910. NameNdoe should not save fsimage twice. Contributed by Konstantin Shvachko.
Modified:
hadoop/common/branches/branch-0.22/hdfs/CHANGES.txt
hadoop/common/branches/branch-0.22/hdfs/src/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java
hadoop/common/branches/branch-0.22/hdfs/src/test/hdfs/org/apache/hadoop/hdfs/server/namenode/TestBackupNode.java
Modified: hadoop/common/branches/branch-0.22/hdfs/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.22/hdfs/CHANGES.txt?rev=1225333&r1=1225332&r2=1225333&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.22/hdfs/CHANGES.txt (original)
+++ hadoop/common/branches/branch-0.22/hdfs/CHANGES.txt Wed Dec 28 20:58:32 2011
@@ -12,6 +12,8 @@ Release 0.22.1 - Unreleased
BUG FIXES
+ HDFS-1910. NameNdoe should not save fsimage twice. (shv)
+
Release 0.22.0 - 2011-11-29
INCOMPATIBLE CHANGES
Modified: hadoop/common/branches/branch-0.22/hdfs/src/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.22/hdfs/src/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java?rev=1225333&r1=1225332&r2=1225333&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.22/hdfs/src/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java (original)
+++ hadoop/common/branches/branch-0.22/hdfs/src/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java Wed Dec 28 20:58:32 2011
@@ -1421,7 +1421,7 @@ public class FSImage extends Storage {
void rollFSImage(CheckpointSignature sig,
boolean renewCheckpointTime) throws IOException {
sig.validateStorageInfo(this);
- rollFSImage(true);
+ rollFSImage(renewCheckpointTime);
}
private void rollFSImage(boolean renewCheckpointTime)
Modified: hadoop/common/branches/branch-0.22/hdfs/src/test/hdfs/org/apache/hadoop/hdfs/server/namenode/TestBackupNode.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.22/hdfs/src/test/hdfs/org/apache/hadoop/hdfs/server/namenode/TestBackupNode.java?rev=1225333&r1=1225332&r2=1225333&view=diff
==============================================================================
--- hadoop/common/branches/branch-0.22/hdfs/src/test/hdfs/org/apache/hadoop/hdfs/server/namenode/TestBackupNode.java (original)
+++ hadoop/common/branches/branch-0.22/hdfs/src/test/hdfs/org/apache/hadoop/hdfs/server/namenode/TestBackupNode.java Wed Dec 28 20:58:32 2011
@@ -155,6 +155,18 @@ public class TestBackupNode {
THIS_HOST + ":0");
backup = startBackupNode(conf, op, 1);
waitCheckpointDone(backup);
+
+ // Verify fstime files are identical in case of BN and not in case of CN
+ FSImage imageNN = cluster.getNameNode().getFSImage();
+ long cpTimeNN = imageNN.readCheckpointTime(imageNN.dirIterator().next());
+ FSImage imageBN = backup.getFSImage();
+ long cpTimeBN = imageBN.readCheckpointTime(imageBN.dirIterator().next());
+ assertTrue(
+ op == StartupOption.BACKUP ?
+ "NN should have the same checkpointTime as BN" :
+ "NN should have different checkpointTime from CN",
+ op == StartupOption.BACKUP && cpTimeNN == cpTimeBN ||
+ op == StartupOption.CHECKPOINT && cpTimeNN != cpTimeBN);
} catch(IOException e) {
LOG.error("Error in TestBackupNode:", e);
assertTrue(e.getLocalizedMessage(), false);