svn commit: r1411229 - in /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs: CHANGES.txt src/main/bin/start-dfs.sh src/main/bin/stop-dfs.sh
Author: daryn Date: Mon Nov 19 15:04:28 2012 New Revision: 1411229 URL: http://svn.apache.org/viewvc?rev=1411229view=rev Log: HDFS-4178. Shell scripts should not close stderr (Andy Isaacson via daryn) Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/start-dfs.sh hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/stop-dfs.sh Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt?rev=1411229r1=1411228r2=1411229view=diff == --- hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt (original) +++ hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt Mon Nov 19 15:04:28 2012 @@ -617,6 +617,8 @@ Release 2.0.3-alpha - Unreleased HDFS-4171. WebHDFS and HttpFs should accept only valid Unix user names. (tucu) +HDFS-4178. Shell scripts should not close stderr (Andy Isaacson via daryn) + Release 2.0.2-alpha - 2012-09-07 INCOMPATIBLE CHANGES Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/start-dfs.sh URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/start-dfs.sh?rev=1411229r1=1411228r2=1411229view=diff == --- hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/start-dfs.sh (original) +++ hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/start-dfs.sh Mon Nov 19 15:04:28 2012 @@ -74,7 +74,7 @@ fi #- # secondary namenodes (if any) -SECONDARY_NAMENODES=$($HADOOP_PREFIX/bin/hdfs getconf -secondarynamenodes 2-) +SECONDARY_NAMENODES=$($HADOOP_PREFIX/bin/hdfs getconf -secondarynamenodes 2/dev/null) if [ -n $SECONDARY_NAMENODES ]; then echo Starting secondary namenodes [$SECONDARY_NAMENODES] Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/stop-dfs.sh URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/stop-dfs.sh?rev=1411229r1=1411228r2=1411229view=diff == --- hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/stop-dfs.sh (original) +++ hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/stop-dfs.sh Mon Nov 19 15:04:28 2012 @@ -50,7 +50,7 @@ fi #- # secondary namenodes (if any) -SECONDARY_NAMENODES=$($HADOOP_PREFIX/bin/hdfs getconf -secondarynamenodes 2-) +SECONDARY_NAMENODES=$($HADOOP_PREFIX/bin/hdfs getconf -secondarynamenodes 2/dev/null) if [ -n $SECONDARY_NAMENODES ]; then echo Stopping secondary namenodes [$SECONDARY_NAMENODES]
svn commit: r1411231 - in /hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs: CHANGES.txt src/main/bin/start-dfs.sh src/main/bin/stop-dfs.sh
Author: daryn Date: Mon Nov 19 15:05:59 2012 New Revision: 1411231 URL: http://svn.apache.org/viewvc?rev=1411231view=rev Log: svn merge -c 1411229 FIXES: HDFS-4178. Shell scripts should not close stderr (Andy Isaacson via daryn) Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/start-dfs.sh hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/stop-dfs.sh Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt?rev=1411231r1=1411230r2=1411231view=diff == --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt Mon Nov 19 15:05:59 2012 @@ -256,6 +256,8 @@ Release 2.0.3-alpha - Unreleased HDFS-4171. WebHDFS and HttpFs should accept only valid Unix user names. (tucu) +HDFS-4178. Shell scripts should not close stderr (Andy Isaacson via daryn) + Release 2.0.2-alpha - 2012-09-07 INCOMPATIBLE CHANGES Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/start-dfs.sh URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/start-dfs.sh?rev=1411231r1=1411230r2=1411231view=diff == --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/start-dfs.sh (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/start-dfs.sh Mon Nov 19 15:05:59 2012 @@ -74,7 +74,7 @@ fi #- # secondary namenodes (if any) -SECONDARY_NAMENODES=$($HADOOP_PREFIX/bin/hdfs getconf -secondarynamenodes 2-) +SECONDARY_NAMENODES=$($HADOOP_PREFIX/bin/hdfs getconf -secondarynamenodes 2/dev/null) if [ -n $SECONDARY_NAMENODES ]; then echo Starting secondary namenodes [$SECONDARY_NAMENODES] Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/stop-dfs.sh URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/stop-dfs.sh?rev=1411231r1=1411230r2=1411231view=diff == --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/stop-dfs.sh (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/bin/stop-dfs.sh Mon Nov 19 15:05:59 2012 @@ -50,7 +50,7 @@ fi #- # secondary namenodes (if any) -SECONDARY_NAMENODES=$($HADOOP_PREFIX/bin/hdfs getconf -secondarynamenodes 2-) +SECONDARY_NAMENODES=$($HADOOP_PREFIX/bin/hdfs getconf -secondarynamenodes 2/dev/null) if [ -n $SECONDARY_NAMENODES ]; then echo Stopping secondary namenodes [$SECONDARY_NAMENODES]
svn commit: r1411441 - in /hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project: hadoop-hdfs-httpfs/pom.xml hadoop-hdfs/CHANGES.txt hadoop-hdfs/pom.xml pom.xml
Author: tgraves Date: Mon Nov 19 21:53:12 2012 New Revision: 1411441 URL: http://svn.apache.org/viewvc?rev=1411441view=rev Log: Preparing 0.23.5 release Modified: hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs-httpfs/pom.xml hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/pom.xml hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/pom.xml Modified: hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs-httpfs/pom.xml URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs-httpfs/pom.xml?rev=1411441r1=1411440r2=1411441view=diff == --- hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs-httpfs/pom.xml (original) +++ hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs-httpfs/pom.xml Mon Nov 19 21:53:12 2012 @@ -22,12 +22,12 @@ parent groupIdorg.apache.hadoop/groupId artifactIdhadoop-project/artifactId -version0.23.6-SNAPSHOT/version +version0.23.5/version relativePath../../hadoop-project/relativePath /parent groupIdorg.apache.hadoop/groupId artifactIdhadoop-hdfs-httpfs/artifactId - version0.23.6-SNAPSHOT/version + version0.23.5/version packagingwar/packaging nameApache Hadoop HttpFS/name Modified: hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt?rev=1411441r1=1411440r2=1411441view=diff == --- hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt (original) +++ hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt Mon Nov 19 21:53:12 2012 @@ -1,17 +1,5 @@ Hadoop HDFS Change Log -Release 0.23.6 - UNRELEASED - - INCOMPATIBLE CHANGES - - NEW FEATURES - - IMPROVEMENTS - - OPTIMIZATIONS - - BUG FIXES - Release 0.23.5 - UNRELEASED INCOMPATIBLE CHANGES Modified: hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/pom.xml URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/pom.xml?rev=1411441r1=1411440r2=1411441view=diff == --- hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/pom.xml (original) +++ hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/pom.xml Mon Nov 19 21:53:12 2012 @@ -20,12 +20,12 @@ parent groupIdorg.apache.hadoop/groupId artifactIdhadoop-project-dist/artifactId -version0.23.6-SNAPSHOT/version +version0.23.5/version relativePath../../hadoop-project-dist/relativePath /parent groupIdorg.apache.hadoop/groupId artifactIdhadoop-hdfs/artifactId - version0.23.6-SNAPSHOT/version + version0.23.5/version descriptionApache Hadoop HDFS/description nameApache Hadoop HDFS/name packagingjar/packaging Modified: hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/pom.xml URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/pom.xml?rev=1411441r1=1411440r2=1411441view=diff == --- hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/pom.xml (original) +++ hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/pom.xml Mon Nov 19 21:53:12 2012 @@ -20,12 +20,12 @@ parent groupIdorg.apache.hadoop/groupId artifactIdhadoop-project/artifactId -version0.23.6-SNAPSHOT/version +version0.23.5/version relativePath../hadoop-project/relativePath /parent groupIdorg.apache.hadoop/groupId artifactIdhadoop-hdfs-project/artifactId - version0.23.6-SNAPSHOT/version + version0.23.5/version descriptionApache Hadoop HDFS Project/description nameApache Hadoop HDFS Project/name packagingpom/packaging
svn commit: r1411470 - /hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/src/test/aop/build/aop.xml
Author: tgraves Date: Mon Nov 19 22:41:55 2012 New Revision: 1411470 URL: http://svn.apache.org/viewvc?rev=1411470view=rev Log: Preparing 0.23.5 release Modified: hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/src/test/aop/build/aop.xml Modified: hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/src/test/aop/build/aop.xml URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/src/test/aop/build/aop.xml?rev=1411470r1=1411469r2=1411470view=diff == --- hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/src/test/aop/build/aop.xml (original) +++ hadoop/common/branches/branch-0.23.5/hadoop-hdfs-project/hadoop-hdfs/src/test/aop/build/aop.xml Mon Nov 19 22:41:55 2012 @@ -21,7 +21,7 @@ property name=aspectversion value=1.6.5/ !-- TODO this has to be changed synchronously with build.xml version prop.-- !-- this workarounds of test-patch setting its own 'version' -- - property name=project.version value=0.23.6-SNAPSHOT/ + property name=project.version value=0.23.5/ !-- Properties common for all fault injections -- property name=build-fi.dir value=${basedir}/build-fi/
svn commit: r1411503 - in /hadoop/common/branches/HDFS-2802/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/snapshot: SnapshotTestHelper.java TestSnapshot.java Tes
Author: suresh Date: Tue Nov 20 01:51:19 2012 New Revision: 1411503 URL: http://svn.apache.org/viewvc?rev=1411503view=rev Log: HDFS-4175. Additional snapshot tests for more complicated directory structure and modifications. Contributed by Jing Zhao. Added: hadoop/common/branches/HDFS-2802/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/snapshot/TestSnapshotDeletion.java Modified: hadoop/common/branches/HDFS-2802/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/snapshot/SnapshotTestHelper.java hadoop/common/branches/HDFS-2802/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/snapshot/TestSnapshot.java Modified: hadoop/common/branches/HDFS-2802/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/snapshot/SnapshotTestHelper.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-2802/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/snapshot/SnapshotTestHelper.java?rev=1411503r1=1411502r2=1411503view=diff == --- hadoop/common/branches/HDFS-2802/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/snapshot/SnapshotTestHelper.java (original) +++ hadoop/common/branches/HDFS-2802/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/snapshot/SnapshotTestHelper.java Tue Nov 20 01:51:19 2012 @@ -20,8 +20,15 @@ package org.apache.hadoop.hdfs.server.na import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertTrue; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Map; +import java.util.Random; + import org.apache.hadoop.fs.FileStatus; +import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; +import org.apache.hadoop.hdfs.DFSTestUtil; import org.apache.hadoop.hdfs.DistributedFileSystem; import org.apache.hadoop.hdfs.protocol.HdfsConstants; @@ -54,7 +61,7 @@ public class SnapshotTestHelper { */ public static Path createSnapshot(DistributedFileSystem hdfs, Path snapshottedDir, String snapshotName) throws Exception { -assert hdfs.exists(snapshottedDir); +assertTrue(hdfs.exists(snapshottedDir)); hdfs.allowSnapshot(snapshottedDir.toString()); hdfs.createSnapshot(snapshotName, snapshottedDir.toString()); return SnapshotTestHelper.getSnapshotRoot(snapshottedDir, snapshotName); @@ -76,4 +83,203 @@ public class SnapshotTestHelper { FileStatus[] snapshotFiles = hdfs.listStatus(snapshotRoot); assertEquals(currentFiles.length, snapshotFiles.length); } + + /** + * Generate the path for a snapshot file. + * + * @param fs FileSystem instance + * @param snapshotRoot of format + * {@literal snapshottble_dir/.snapshot/snapshot_name} + * @param file path to a file + * @return The path of the snapshot of the file assuming the file has a + * snapshot under the snapshot root of format + * {@literal snapshottble_dir/.snapshot/snapshot_name/path_to_file_inside_snapshot} + * . Null if the file is not under the directory associated with the + * snapshot root. + */ + static Path getSnapshotFile(FileSystem fs, Path snapshotRoot, Path file) { +Path rootParent = snapshotRoot.getParent(); +if (rootParent != null rootParent.getName().equals(.snapshot)) { + Path snapshotDir = rootParent.getParent(); + if (file.toString().contains(snapshotDir.toString())) { +String fileName = file.toString().substring( +snapshotDir.toString().length() + 1); +Path snapshotFile = new Path(snapshotRoot, fileName); +return snapshotFile; + } +} +return null; + } + + /** + * A class creating directories trees for snapshot testing. For simplicity, + * the directory tree is a binary tree, i.e., each directory has two children + * as snapshottable directories. + */ + static class TestDirectoryTree { +/** Height of the directory tree */ +final int height; +final FileSystem fs; +/** Top node of the directory tree */ +final Node topNode; +/** A map recording nodes for each tree level */ +final MapInteger, ArrayListNode levelMap; + +/** + * Constructor to build a tree of given {@code height} + */ +TestDirectoryTree(int height, FileSystem fs) throws Exception { + this.height = height; + this.fs = fs; + this.topNode = new Node(new Path(/TestSnapshot), 0, + null, fs); + this.levelMap = new HashMapInteger, ArrayListNode(); + addDirNode(topNode, 0); + genChildren(topNode, height - 1); +} + +/** + * Add a node into the levelMap + */ +private void addDirNode(Node node, int atLevel) { + ArrayListNode list = levelMap.get(atLevel); + if (list == null) { +
svn commit: r1411508 - in /hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs: ./ src/main/java/org/apache/hadoop/hdfs/server/namenode/ src/test/java/org/apache/hadoop/hdfs/server/namenode/
Author: shv Date: Tue Nov 20 02:00:20 2012 New Revision: 1411508 URL: http://svn.apache.org/viewvc?rev=1411508view=rev Log: HDFS-4179. BackupNode: allow reads, fix checkpointing, safeMode. (shv) Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/BackupNode.java hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/Checkpointer.java hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestBackupNode.java Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt?rev=1411508r1=1411507r2=1411508view=diff == --- hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt (original) +++ hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt Tue Nov 20 02:00:20 2012 @@ -619,6 +619,8 @@ Release 2.0.3-alpha - Unreleased HDFS-4178. Shell scripts should not close stderr (Andy Isaacson via daryn) +HDFS-4179. BackupNode: allow reads, fix checkpointing, safeMode. (shv) + Release 2.0.2-alpha - 2012-09-07 INCOMPATIBLE CHANGES Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/BackupNode.java URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/BackupNode.java?rev=1411508r1=1411507r2=1411508view=diff == --- hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/BackupNode.java (original) +++ hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/BackupNode.java Tue Nov 20 02:00:20 2012 @@ -69,6 +69,8 @@ public class BackupNode extends NameNode private static final String BN_HTTP_ADDRESS_NAME_KEY = DFSConfigKeys.DFS_NAMENODE_BACKUP_HTTP_ADDRESS_KEY; private static final String BN_HTTP_ADDRESS_DEFAULT = DFSConfigKeys.DFS_NAMENODE_BACKUP_HTTP_ADDRESS_DEFAULT; private static final String BN_SERVICE_RPC_ADDRESS_KEY = DFSConfigKeys.DFS_NAMENODE_BACKUP_SERVICE_RPC_ADDRESS_KEY; + private static final float BN_SAFEMODE_THRESHOLD_PCT_DEFAULT = 1.5f; + private static final intBN_SAFEMODE_EXTENSION_DEFAULT = Integer.MAX_VALUE; /** Name-node proxy */ NamenodeProtocol namenode; @@ -127,6 +129,10 @@ public class BackupNode extends NameNode @Override // NameNode protected void loadNamesystem(Configuration conf) throws IOException { +conf.setFloat(DFSConfigKeys.DFS_NAMENODE_SAFEMODE_THRESHOLD_PCT_KEY, +BN_SAFEMODE_THRESHOLD_PCT_DEFAULT); +conf.setInt(DFSConfigKeys.DFS_NAMENODE_SAFEMODE_EXTENSION_KEY, +BN_SAFEMODE_EXTENSION_DEFAULT); BackupImage bnImage = new BackupImage(conf); this.namesystem = new FSNamesystem(conf, bnImage); bnImage.setNamesystem(namesystem); @@ -423,9 +429,9 @@ public class BackupNode extends NameNode return; } if (OperationCategory.JOURNAL != op - !(OperationCategory.READ == op allowStaleStandbyReads)) { + !(OperationCategory.READ == op !isRole(NamenodeRole.CHECKPOINT))) { String msg = Operation category + op -+ is not supported at the BackupNode; ++ is not supported at + getRole(); throw new StandbyException(msg); } } Modified: hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/Checkpointer.java URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/Checkpointer.java?rev=1411508r1=1411507r2=1411508view=diff == --- hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/Checkpointer.java (original) +++ hadoop/common/trunk/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/Checkpointer.java Tue Nov 20 02:00:20 2012 @@ -206,6 +206,7 @@ class Checkpointer extends Daemon { RemoteEditLogManifest manifest = getRemoteNamenodeProxy().getEditLogManifest(bnImage.getLastAppliedTxId() + 1); +boolean needReloadImage = false; if
svn commit: r1411509 - in /hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs: ./ src/main/java/org/apache/hadoop/hdfs/server/namenode/ src/test/java/org/apache/hadoop/hdfs/server/namenod
Author: shv Date: Tue Nov 20 02:04:02 2012 New Revision: 1411509 URL: http://svn.apache.org/viewvc?rev=1411509view=rev Log: HDFS-4179. BackupNode: allow reads, fix checkpointing, safeMode. Contributed by Konstantin Shvachko. Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/BackupNode.java hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/Checkpointer.java hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSImage.java hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/test/java/org/apache/hadoop/hdfs/server/namenode/TestBackupNode.java Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt?rev=1411509r1=1411508r2=1411509view=diff == --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt Tue Nov 20 02:04:02 2012 @@ -258,6 +258,9 @@ Release 2.0.3-alpha - Unreleased HDFS-4178. Shell scripts should not close stderr (Andy Isaacson via daryn) +HDFS-4179. BackupNode: allow reads, fix checkpointing, safeMode. (shv) + + Release 2.0.2-alpha - 2012-09-07 INCOMPATIBLE CHANGES Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/BackupNode.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/BackupNode.java?rev=1411509r1=1411508r2=1411509view=diff == --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/BackupNode.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/BackupNode.java Tue Nov 20 02:04:02 2012 @@ -68,6 +68,8 @@ public class BackupNode extends NameNode private static final String BN_HTTP_ADDRESS_NAME_KEY = DFSConfigKeys.DFS_NAMENODE_BACKUP_HTTP_ADDRESS_KEY; private static final String BN_HTTP_ADDRESS_DEFAULT = DFSConfigKeys.DFS_NAMENODE_BACKUP_HTTP_ADDRESS_DEFAULT; private static final String BN_SERVICE_RPC_ADDRESS_KEY = DFSConfigKeys.DFS_NAMENODE_BACKUP_SERVICE_RPC_ADDRESS_KEY; + private static final float BN_SAFEMODE_THRESHOLD_PCT_DEFAULT = 1.5f; + private static final intBN_SAFEMODE_EXTENSION_DEFAULT = Integer.MAX_VALUE; /** Name-node proxy */ NamenodeProtocol namenode; @@ -126,6 +128,10 @@ public class BackupNode extends NameNode @Override // NameNode protected void loadNamesystem(Configuration conf) throws IOException { +conf.setFloat(DFSConfigKeys.DFS_NAMENODE_SAFEMODE_THRESHOLD_PCT_KEY, +BN_SAFEMODE_THRESHOLD_PCT_DEFAULT); +conf.setInt(DFSConfigKeys.DFS_NAMENODE_SAFEMODE_EXTENSION_KEY, +BN_SAFEMODE_EXTENSION_DEFAULT); BackupImage bnImage = new BackupImage(conf); this.namesystem = new FSNamesystem(conf, bnImage); bnImage.setNamesystem(namesystem); @@ -413,9 +419,9 @@ public class BackupNode extends NameNode return; } if (OperationCategory.JOURNAL != op - !(OperationCategory.READ == op allowStaleStandbyReads)) { + !(OperationCategory.READ == op !isRole(NamenodeRole.CHECKPOINT))) { String msg = Operation category + op -+ is not supported at the BackupNode; ++ is not supported at + getRole(); throw new StandbyException(msg); } } Modified: hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/Checkpointer.java URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/Checkpointer.java?rev=1411509r1=1411508r2=1411509view=diff == --- hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/Checkpointer.java (original) +++ hadoop/common/branches/branch-2/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/namenode/Checkpointer.java Tue Nov 20 02:04:02