HDFS-4138. BackupNode startup fails due to uninitialized edit log. Contributed by Kihwal Lee.
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/branches/branch-2@1406743 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
824fd2d4be
commit
61c432b31e
|
@ -1686,6 +1686,9 @@ Release 0.23.5 - UNRELEASED
|
||||||
HDFS-3625. Fix TestBackupNode by properly initializing edit log during
|
HDFS-3625. Fix TestBackupNode by properly initializing edit log during
|
||||||
startup. (Junping Du via todd)
|
startup. (Junping Du via todd)
|
||||||
|
|
||||||
|
HDFS-4138. BackupNode startup fails due to uninitialized edit log.
|
||||||
|
(Kihwal Lee via shv)
|
||||||
|
|
||||||
Release 0.23.4 - UNRELEASED
|
Release 0.23.4 - UNRELEASED
|
||||||
|
|
||||||
INCOMPATIBLE CHANGES
|
INCOMPATIBLE CHANGES
|
||||||
|
|
|
@ -77,10 +77,6 @@ public class BackupNode extends NameNode {
|
||||||
String nnHttpAddress;
|
String nnHttpAddress;
|
||||||
/** Checkpoint manager */
|
/** Checkpoint manager */
|
||||||
Checkpointer checkpointManager;
|
Checkpointer checkpointManager;
|
||||||
/** ClusterID to which BackupNode belongs to */
|
|
||||||
String clusterId;
|
|
||||||
/** Block pool Id of the peer namenode of this BackupNode */
|
|
||||||
String blockPoolId;
|
|
||||||
|
|
||||||
BackupNode(Configuration conf, NamenodeRole role) throws IOException {
|
BackupNode(Configuration conf, NamenodeRole role) throws IOException {
|
||||||
super(conf, role);
|
super(conf, role);
|
||||||
|
@ -144,6 +140,7 @@ public class BackupNode extends NameNode {
|
||||||
CommonConfigurationKeys.FS_TRASH_INTERVAL_DEFAULT);
|
CommonConfigurationKeys.FS_TRASH_INTERVAL_DEFAULT);
|
||||||
NamespaceInfo nsInfo = handshake(conf);
|
NamespaceInfo nsInfo = handshake(conf);
|
||||||
super.initialize(conf);
|
super.initialize(conf);
|
||||||
|
namesystem.setBlockPoolId(nsInfo.getBlockPoolID());
|
||||||
|
|
||||||
if (false == namesystem.isInSafeMode()) {
|
if (false == namesystem.isInSafeMode()) {
|
||||||
namesystem.setSafeMode(SafeModeAction.SAFEMODE_ENTER);
|
namesystem.setSafeMode(SafeModeAction.SAFEMODE_ENTER);
|
||||||
|
@ -153,9 +150,6 @@ public class BackupNode extends NameNode {
|
||||||
// therefore lease hard limit should never expire.
|
// therefore lease hard limit should never expire.
|
||||||
namesystem.leaseManager.setLeasePeriod(
|
namesystem.leaseManager.setLeasePeriod(
|
||||||
HdfsConstants.LEASE_SOFTLIMIT_PERIOD, Long.MAX_VALUE);
|
HdfsConstants.LEASE_SOFTLIMIT_PERIOD, Long.MAX_VALUE);
|
||||||
|
|
||||||
clusterId = nsInfo.getClusterID();
|
|
||||||
blockPoolId = nsInfo.getBlockPoolID();
|
|
||||||
|
|
||||||
// register with the active name-node
|
// register with the active name-node
|
||||||
registerWith(nsInfo);
|
registerWith(nsInfo);
|
||||||
|
@ -209,7 +203,7 @@ public class BackupNode extends NameNode {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* @Override */// NameNode
|
/* @Override */// NameNode
|
||||||
public boolean setSafeMode(@SuppressWarnings("unused") SafeModeAction action)
|
public boolean setSafeMode(SafeModeAction action)
|
||||||
throws IOException {
|
throws IOException {
|
||||||
throw new UnsupportedActionException("setSafeMode");
|
throw new UnsupportedActionException("setSafeMode");
|
||||||
}
|
}
|
||||||
|
@ -405,14 +399,6 @@ public class BackupNode extends NameNode {
|
||||||
return nsInfo;
|
return nsInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
String getBlockPoolId() {
|
|
||||||
return blockPoolId;
|
|
||||||
}
|
|
||||||
|
|
||||||
String getClusterId() {
|
|
||||||
return clusterId;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected NameNodeHAContext createHAContext() {
|
protected NameNodeHAContext createHAContext() {
|
||||||
return new BNHAContext();
|
return new BNHAContext();
|
||||||
|
|
|
@ -3483,7 +3483,7 @@ public class FSNamesystem implements Namesystem, FSClusterStats,
|
||||||
@Metric({"TransactionsSinceLastLogRoll",
|
@Metric({"TransactionsSinceLastLogRoll",
|
||||||
"Number of transactions since last edit log roll"})
|
"Number of transactions since last edit log roll"})
|
||||||
public long getTransactionsSinceLastLogRoll() {
|
public long getTransactionsSinceLastLogRoll() {
|
||||||
if (isInStandbyState()) {
|
if (isInStandbyState() || !getEditLog().isSegmentOpen()) {
|
||||||
return 0;
|
return 0;
|
||||||
} else {
|
} else {
|
||||||
return getEditLog().getLastWrittenTxId() -
|
return getEditLog().getLastWrittenTxId() -
|
||||||
|
|
Loading…
Reference in New Issue