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 su...@apache.org on 2012/01/12 02:39:31 UTC
svn commit: r1230351 - in
/hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common: ./
src/main/java/org/apache/hadoop/ha/
Author: suresh
Date: Thu Jan 12 01:39:30 2012
New Revision: 1230351
URL: http://svn.apache.org/viewvc?rev=1230351&view=rev
Log:
HADOOP-7970. HAServiceProtocol methods must throw IOException.Contributed by Hari Mankude.
Modified:
hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/CHANGES.HDFS-1623.txt
hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/FailoverController.java
hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAServiceProtocol.java
hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HealthCheckFailedException.java
hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/ServiceFailedException.java
Modified: hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/CHANGES.HDFS-1623.txt
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/CHANGES.HDFS-1623.txt?rev=1230351&r1=1230350&r2=1230351&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/CHANGES.HDFS-1623.txt (original)
+++ hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/CHANGES.HDFS-1623.txt Thu Jan 12 01:39:30 2012
@@ -28,3 +28,6 @@ HADOOP-7932. Make client connection retr
HADOOP-7924. â©FailoverController for client-based configuration (eli)
HADOOP-7961. Move HA fencing to common. (eli)
+
+HADOOP-7970. HAServiceProtocol methods must throw IOException.
+(Hari Mankude via suresh).
Modified: hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/FailoverController.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/FailoverController.java?rev=1230351&r1=1230350&r2=1230351&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/FailoverController.java (original)
+++ hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/FailoverController.java Thu Jan 12 01:39:30 2012
@@ -17,6 +17,8 @@
*/
package org.apache.hadoop.ha;
+import java.io.IOException;
+
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -51,7 +53,7 @@ public class FailoverController {
HAServiceState toSvcState;
try {
toSvcState = toSvc.getServiceState();
- } catch (Exception e) {
+ } catch (IOException e) {
String msg = "Unable to get service state for " + toSvcName;
LOG.error(msg, e);
throw new FailoverFailedException(msg, e);
@@ -65,6 +67,9 @@ public class FailoverController {
} catch (HealthCheckFailedException hce) {
throw new FailoverFailedException(
"Can't failover to an unhealthy service", hce);
+ } catch (IOException e) {
+ throw new FailoverFailedException(
+ "Got an io exception", e);
}
// TODO(HA): ask toSvc if it's capable. Eg not in SM.
}
Modified: hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAServiceProtocol.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAServiceProtocol.java?rev=1230351&r1=1230350&r2=1230351&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAServiceProtocol.java (original)
+++ hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HAServiceProtocol.java Thu Jan 12 01:39:30 2012
@@ -21,6 +21,8 @@ import org.apache.hadoop.classification.
import org.apache.hadoop.classification.InterfaceStability;
import org.apache.hadoop.ipc.VersionedProtocol;
+import java.io.IOException;
+
/**
* Protocol interface that provides High Availability related primitives to
* monitor and fail-over the service.
@@ -69,8 +71,11 @@ public interface HAServiceProtocol exten
*
* @throws HealthCheckFailedException
* if the health check of a service fails.
+ * @throws IOException
+ * if other errors happen
*/
- public void monitorHealth() throws HealthCheckFailedException;
+ public void monitorHealth() throws HealthCheckFailedException,
+ IOException;
/**
* Request service to transition to active state. No operation, if the
@@ -78,8 +83,11 @@ public interface HAServiceProtocol exten
*
* @throws ServiceFailedException
* if transition from standby to active fails.
+ * @throws IOException
+ * if other errors happen
*/
- public void transitionToActive() throws ServiceFailedException;
+ public void transitionToActive() throws ServiceFailedException,
+ IOException;
/**
* Request service to transition to standby state. No operation, if the
@@ -87,11 +95,17 @@ public interface HAServiceProtocol exten
*
* @throws ServiceFailedException
* if transition from active to standby fails.
+ * @throws IOException
+ * if other errors happen
*/
- public void transitionToStandby() throws ServiceFailedException;
+ public void transitionToStandby() throws ServiceFailedException,
+ IOException;
/**
* Return the current state of the service.
+ *
+ * @throws IOException
+ * if other errors happen
*/
- public HAServiceState getServiceState();
+ public HAServiceState getServiceState() throws IOException;
}
Modified: hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HealthCheckFailedException.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HealthCheckFailedException.java?rev=1230351&r1=1230350&r2=1230351&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HealthCheckFailedException.java (original)
+++ hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/HealthCheckFailedException.java Thu Jan 12 01:39:30 2012
@@ -17,6 +17,8 @@
*/
package org.apache.hadoop.ha;
+import java.io.IOException;
+
import org.apache.hadoop.classification.InterfaceAudience;
import org.apache.hadoop.classification.InterfaceStability;
@@ -25,7 +27,7 @@ import org.apache.hadoop.classification.
*/
@InterfaceAudience.Public
@InterfaceStability.Evolving
-public class HealthCheckFailedException extends Exception {
+public class HealthCheckFailedException extends IOException {
private static final long serialVersionUID = 1L;
public HealthCheckFailedException(final String message) {
Modified: hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/ServiceFailedException.java
URL: http://svn.apache.org/viewvc/hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/ServiceFailedException.java?rev=1230351&r1=1230350&r2=1230351&view=diff
==============================================================================
--- hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/ServiceFailedException.java (original)
+++ hadoop/common/branches/HDFS-1623/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/ha/ServiceFailedException.java Thu Jan 12 01:39:30 2012
@@ -17,6 +17,8 @@
*/
package org.apache.hadoop.ha;
+import java.io.IOException;
+
import org.apache.hadoop.classification.InterfaceAudience;
import org.apache.hadoop.classification.InterfaceStability;
@@ -27,7 +29,7 @@ import org.apache.hadoop.classification.
*/
@InterfaceAudience.Public
@InterfaceStability.Evolving
-public class ServiceFailedException extends Exception {
+public class ServiceFailedException extends IOException {
private static final long serialVersionUID = 1L;
public ServiceFailedException(final String message) {