Avoiding premature helix manager closure
diff --git a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/cancel/WorkflowCancellationTask.java b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/cancel/WorkflowCancellationTask.java
index a05bb63..6236a6c 100644
--- a/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/cancel/WorkflowCancellationTask.java
+++ b/modules/airavata-helix/helix-spectator/src/main/java/org/apache/airavata/helix/impl/task/cancel/WorkflowCancellationTask.java
@@ -34,7 +34,6 @@
super.init(manager, workflowName, jobName, taskName);
try {
-
helixManager = HelixManagerFactory.getZKHelixManager(ServerSettings.getSetting("helix.cluster.name"), taskName,
InstanceType.SPECTATOR, ServerSettings.getZookeeperConnection());
helixManager.connect();
@@ -47,19 +46,18 @@
);
taskDriver = new TaskDriver(helixManager);
} catch (Exception e) {
- logger.error("Failed to build Helix Task driver in " + taskName, e);
- throw new RuntimeException("Failed to build Helix Task driver in " + taskName, e);
- } finally {
-
try {
if (helixManager != null) {
if (helixManager.isConnected()) {
helixManager.disconnect();
}
}
- } catch (Exception e) {
- logger.warn("Failed to disconnect helix manager", e);
+ } catch (Exception ex) {
+ logger.warn("Failed to disconnect helix manager", ex);
}
+
+ logger.error("Failed to build Helix Task driver in " + taskName, e);
+ throw new RuntimeException("Failed to build Helix Task driver in " + taskName, e);
}
}