Details
diff --git a/src/java/azkaban/execapp/event/FlowWatcher.java b/src/java/azkaban/execapp/event/FlowWatcher.java
index 4a13a4b..8ca895e 100644
--- a/src/java/azkaban/execapp/event/FlowWatcher.java
+++ b/src/java/azkaban/execapp/event/FlowWatcher.java
@@ -81,6 +81,7 @@ public abstract class FlowWatcher {
cancelWatch = true;
for(BlockingStatus status : map.values()) {
+ logger.info("Unblocking " + status.getJobId());
status.changeStatus(Status.KILLED);
status.unblock();
}
diff --git a/src/java/azkaban/execapp/FlowRunner.java b/src/java/azkaban/execapp/FlowRunner.java
index 8259d96..5e61178 100644
--- a/src/java/azkaban/execapp/FlowRunner.java
+++ b/src/java/azkaban/execapp/FlowRunner.java
@@ -725,7 +725,10 @@ public class FlowRunner extends EventHandler implements Runnable {
public synchronized void handleEvent(Event event) {
JobRunner runner = (JobRunner)event.getRunner();
- if (event.getType() == Type.JOB_FINISHED) {
+ if (event.getType() == Type.JOB_STATUS_CHANGED) {
+
+ }
+ else if (event.getType() == Type.JOB_FINISHED) {
synchronized(mainSyncObj) {
ExecutableNode node = runner.getNode();
activeJobRunners.remove(node.getJobId());
diff --git a/src/java/azkaban/execapp/JobRunner.java b/src/java/azkaban/execapp/JobRunner.java
index 4e7413b..143a861 100644
--- a/src/java/azkaban/execapp/JobRunner.java
+++ b/src/java/azkaban/execapp/JobRunner.java
@@ -231,6 +231,8 @@ public class JobRunner extends EventHandler implements Runnable {
break;
}
}
+ writeStatus();
+ fireEvent(Event.create(this, Type.JOB_STATUS_CHANGED));
}
if (watcher.isWatchCancelled()) {
logger.info("Job was cancelled while waiting on pipeline. Quiting.");