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 to...@apache.org on 2012/04/03 22:41:36 UTC
svn commit: r1309136 - in
/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common: ./
src/main/java/org/apache/hadoop/ha/
Author: todd
Date: Tue Apr 3 20:41:36 2012
New Revision: 1309136
URL: http://svn.apache.org/viewvc?rev=1309136&view=rev
Log:
HADOOP-8243. Security support broken in CLI (manual) failover controller. Contributed by Todd Lipcon.
Modified:
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/FailoverController.java
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAAdmin.java
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAServiceTarget.java
hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/ZKFailoverController.java
Modified: hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt?rev=1309136&r1=1309135&r2=1309136&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt (original)
+++ hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/CHANGES.txt Tue Apr 3 20:41:36 2012
@@ -206,6 +206,9 @@ Release 2.0.0 - UNRELEASED
HADOOP-8238. NetUtils#getHostNameOfIP blows up if given ip:port
string w/o port. (eli)
+ HADOOP-8243. Security support broken in CLI (manual) failover controller
+ (todd)
+
BREAKDOWN OF HADOOP-7454 SUBTASKS
HADOOP-7455. HA: Introduce HA Service Protocol Interface. (suresh)
Modified: hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/FailoverController.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/FailoverController.java?rev=1309136&r1=1309135&r2=1309136&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/FailoverController.java (original)
+++ hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/FailoverController.java Tue Apr 3 20:41:36 2012
@@ -52,14 +52,22 @@ public class FailoverController {
public FailoverController(Configuration conf) {
this.conf = conf;
- this.gracefulFenceTimeout = conf.getInt(
+ this.gracefulFenceTimeout = getGracefulFenceTimeout(conf);
+ this.rpcTimeoutToNewActive = getRpcTimeoutToNewActive(conf);
+ }
+
+ static int getGracefulFenceTimeout(Configuration conf) {
+ return conf.getInt(
CommonConfigurationKeys.HA_FC_GRACEFUL_FENCE_TIMEOUT_KEY,
CommonConfigurationKeys.HA_FC_GRACEFUL_FENCE_TIMEOUT_DEFAULT);
- this.rpcTimeoutToNewActive = conf.getInt(
+ }
+
+ static int getRpcTimeoutToNewActive(Configuration conf) {
+ return conf.getInt(
CommonConfigurationKeys.HA_FC_NEW_ACTIVE_TIMEOUT_KEY,
CommonConfigurationKeys.HA_FC_NEW_ACTIVE_TIMEOUT_DEFAULT);
}
-
+
/**
* Perform pre-failover checks on the given service we plan to
* failover to, eg to prevent failing over to a service (eg due
Modified: hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAAdmin.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAAdmin.java?rev=1309136&r1=1309135&r2=1309136&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAAdmin.java (original)
+++ hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAAdmin.java Tue Apr 3 20:41:36 2012
@@ -114,7 +114,8 @@ public abstract class HAAdmin extends Co
return -1;
}
- HAServiceProtocol proto = resolveTarget(argv[1]).getProxy();
+ HAServiceProtocol proto = resolveTarget(argv[1]).getProxy(
+ getConf(), 0);
HAServiceProtocolHelper.transitionToActive(proto);
return 0;
}
@@ -127,7 +128,8 @@ public abstract class HAAdmin extends Co
return -1;
}
- HAServiceProtocol proto = resolveTarget(argv[1]).getProxy();
+ HAServiceProtocol proto = resolveTarget(argv[1]).getProxy(
+ getConf(), 0);
HAServiceProtocolHelper.transitionToStandby(proto);
return 0;
}
Modified: hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAServiceTarget.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAServiceTarget.java?rev=1309136&r1=1309135&r2=1309136&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAServiceTarget.java (original)
+++ hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAServiceTarget.java Tue Apr 3 20:41:36 2012
@@ -68,11 +68,4 @@ public abstract class HAServiceTarget {
getAddress(),
confCopy, factory, timeoutMs);
}
-
- /**
- * @return a proxy to connect to the target HA Service.
- */
- public final HAServiceProtocol getProxy() throws IOException {
- return getProxy(new Configuration(), 0); // default conf, timeout
- }
}
Modified: hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/ZKFailoverController.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/ZKFailoverController.java?rev=1309136&r1=1309135&r2=1309136&view=diff
==============================================================================
--- hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/ZKFailoverController.java (original)
+++ hadoop/common/branches/branch-2/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/ZKFailoverController.java Tue Apr 3 20:41:36 2012
@@ -245,7 +245,8 @@ public abstract class ZKFailoverControll
private synchronized void becomeActive() {
LOG.info("Trying to make " + localTarget + " active...");
try {
- localTarget.getProxy().transitionToActive();
+ HAServiceProtocolHelper.transitionToActive(localTarget.getProxy(
+ conf, FailoverController.getRpcTimeoutToNewActive(conf)));
LOG.info("Successfully transitioned " + localTarget +
" to active state");
} catch (Throwable t) {
@@ -267,7 +268,8 @@ public abstract class ZKFailoverControll
LOG.info("ZK Election indicated that " + localTarget +
" should become standby");
try {
- localTarget.getProxy().transitionToStandby();
+ int timeout = FailoverController.getGracefulFenceTimeout(conf);
+ localTarget.getProxy(conf, timeout).transitionToStandby();
LOG.info("Successfully transitioned " + localTarget +
" to standby state");
} catch (Exception e) {