Author: szetszwo
Date: Fri Feb 20 19:01:34 2009
New Revision: 746340
URL: http://svn.apache.org/viewvc?rev=746340&view=rev
Log:
HADOOP-5120. Remove the use of FSNamesystem.getFSNamesystem() from
UpgradeManagerNamenode and UpgradeObjectNamenode. (szetszwo)
Modified:
hadoop/core/trunk/CHANGES.txt
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/UpgradeManagerNamenode.java
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/UpgradeObjectNamenode.java
Modified: hadoop/core/trunk/CHANGES.txt
URL:
http://svn.apache.org/viewvc/hadoop/core/trunk/CHANGES.txt?rev=746340&r1=746339&r2=746340&view=diff
==============================================================================
--- hadoop/core/trunk/CHANGES.txt (original)
+++ hadoop/core/trunk/CHANGES.txt Fri Feb 20 19:01:34 2009
@@ -115,6 +115,9 @@
HADOOP-5275. Add ivy directory and files to built tar.
(Giridharan Kesavan via nigel)
+ HADOOP-5120. Remove the use of FSNamesystem.getFSNamesystem() from
+ UpgradeManagerNamenode and UpgradeObjectNamenode. (szetszwo)
+
OPTIMIZATIONS
BUG FIXES
Modified:
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java
URL:
http://svn.apache.org/viewvc/hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java?rev=746340&r1=746339&r2=746340&view=diff
==============================================================================
---
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java
(original)
+++
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/FSNamesystem.java
Fri Feb 20 19:01:34 2009
@@ -4283,7 +4283,7 @@
}
// Distributed upgrade manager
- UpgradeManagerNamenode upgradeManager = new UpgradeManagerNamenode();
+ final UpgradeManagerNamenode upgradeManager = new
UpgradeManagerNamenode(this);
UpgradeStatusReport distributedUpgradeProgress(UpgradeAction action
) throws IOException {
Modified:
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/UpgradeManagerNamenode.java
URL:
http://svn.apache.org/viewvc/hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/UpgradeManagerNamenode.java?rev=746340&r1=746339&r2=746340&view=diff
==============================================================================
---
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/UpgradeManagerNamenode.java
(original)
+++
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/UpgradeManagerNamenode.java
Fri Feb 20 19:01:34 2009
@@ -17,7 +17,6 @@
*/
package org.apache.hadoop.hdfs.server.namenode;
-import java.util.SortedSet;
import java.io.IOException;
import org.apache.hadoop.hdfs.protocol.FSConstants;
@@ -25,9 +24,7 @@
import org.apache.hadoop.hdfs.server.common.HdfsConstants;
import org.apache.hadoop.hdfs.server.common.IncorrectVersionException;
import org.apache.hadoop.hdfs.server.common.UpgradeManager;
-import org.apache.hadoop.hdfs.server.common.UpgradeObjectCollection;
import org.apache.hadoop.hdfs.server.common.UpgradeStatusReport;
-import org.apache.hadoop.hdfs.server.common.Upgradeable;
import org.apache.hadoop.hdfs.server.protocol.UpgradeCommand;
/**
@@ -45,6 +42,12 @@
return HdfsConstants.NodeType.NAME_NODE;
}
+ private final FSNamesystem namesystem;
+
+ UpgradeManagerNamenode(FSNamesystem namesystem) {
+ this.namesystem = namesystem;
+ }
+
/**
* Start distributed upgrade.
* Instantiates distributed upgrade objects.
@@ -57,7 +60,7 @@
initializeUpgrade();
if(!upgradeState) return false;
// write new upgrade state into disk
- FSNamesystem.getFSNamesystem().getFSImage().writeAll();
+ namesystem.getFSImage().writeAll();
}
assert currentUpgrades != null : "currentUpgrades is null";
this.broadcastCommand = currentUpgrades.first().startUpgrade();
@@ -106,17 +109,17 @@
public synchronized void completeUpgrade() throws IOException {
// set and write new upgrade state into disk
setUpgradeState(false, FSConstants.LAYOUT_VERSION);
- FSNamesystem.getFSNamesystem().getFSImage().writeAll();
+ namesystem.getFSImage().writeAll();
currentUpgrades = null;
broadcastCommand = null;
- FSNamesystem.getFSNamesystem().leaveSafeMode(false);
+ namesystem.leaveSafeMode(false);
}
UpgradeStatusReport distributedUpgradeProgress(UpgradeAction action
) throws IOException {
boolean isFinalized = false;
if(currentUpgrades == null) { // no upgrades are in progress
- FSImage fsimage = FSNamesystem.getFSNamesystem().getFSImage();
+ FSImage fsimage = namesystem.getFSImage();
isFinalized = fsimage.isUpgradeFinalized();
if(isFinalized) // upgrade is finalized
return null; // nothing to report
@@ -136,13 +139,4 @@
}
return curUO.getUpgradeStatusReport(details);
}
-
- public static void main(String[] args) throws IOException {
- UpgradeManagerNamenode um = new UpgradeManagerNamenode();
- SortedSet<Upgradeable> uos;
- uos = UpgradeObjectCollection.getDistributedUpgrades(-4,
- HdfsConstants.NodeType.NAME_NODE);
- System.out.println(uos.size());
- um.startUpgrade();
- }
}
Modified:
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/UpgradeObjectNamenode.java
URL:
http://svn.apache.org/viewvc/hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/UpgradeObjectNamenode.java?rev=746340&r1=746339&r2=746340&view=diff
==============================================================================
---
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/UpgradeObjectNamenode.java
(original)
+++
hadoop/core/trunk/src/hdfs/org/apache/hadoop/hdfs/server/namenode/UpgradeObjectNamenode.java
Fri Feb 20 19:01:34 2009
@@ -19,7 +19,6 @@
import java.io.IOException;
-import org.apache.hadoop.hdfs.protocol.FSConstants;
import org.apache.hadoop.hdfs.server.common.HdfsConstants;
import org.apache.hadoop.hdfs.server.common.UpgradeObject;
import org.apache.hadoop.hdfs.server.protocol.UpgradeCommand;
@@ -55,10 +54,6 @@
getVersion(), (short)0);
}
- protected FSNamesystem getFSNamesystem() {
- return FSNamesystem.getFSNamesystem();
- }
-
public void forceProceed() throws IOException {
// do nothing by default
NameNode.LOG.info("forceProceed() is not defined for the upgrade. "