Repository: kylin
Updated Branches:
  refs/heads/master 873c8a83e -> 61c9e3601


KYLIN-1738 Save MR JobInfo even the job got killed


Project: http://git-wip-us.apache.org/repos/asf/kylin/repo
Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/af028f01
Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/af028f01
Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/af028f01

Branch: refs/heads/master
Commit: af028f012c7d765374f279d265595f75b53358f2
Parents: 873c8a8
Author: lidongsjtu <lid...@apache.org>
Authored: Thu May 26 10:32:02 2016 +0800
Committer: lidongsjtu <lid...@apache.org>
Committed: Thu May 26 16:25:14 2016 +0800

----------------------------------------------------------------------
 .../apache/kylin/engine/mr/common/MapReduceExecutable.java  | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/kylin/blob/af028f01/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/MapReduceExecutable.java
----------------------------------------------------------------------
diff --git 
a/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/MapReduceExecutable.java
 
b/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/MapReduceExecutable.java
index 4cf7dfb..19ad132 100644
--- 
a/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/MapReduceExecutable.java
+++ 
b/engine-mr/src/main/java/org/apache/kylin/engine/mr/common/MapReduceExecutable.java
@@ -46,6 +46,8 @@ import org.apache.kylin.job.execution.ExecutableContext;
 import org.apache.kylin.job.execution.ExecutableState;
 import org.apache.kylin.job.execution.ExecuteResult;
 import org.apache.kylin.job.execution.Output;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 import com.google.common.base.Preconditions;
 
@@ -58,6 +60,8 @@ public class MapReduceExecutable extends AbstractExecutable {
     private static final String KEY_PARAMS = "MR_JOB_PARAMS";
     private static final String KEY_COUNTER_SAVEAS = "MR_COUNTER_SAVEAS";
 
+    protected static final Logger logger = 
LoggerFactory.getLogger(MapReduceExecutable.class);
+
     public MapReduceExecutable() {
         super();
     }
@@ -147,17 +151,18 @@ public class MapReduceExecutable extends 
AbstractExecutable {
 //            HadoopStatusChecker statusChecker = new 
HadoopStatusChecker(restStatusCheckUrl, mrJobId, output, useKerberosAuth);
             JobStepStatusEnum status = JobStepStatusEnum.NEW;
             while (!isDiscarded()) {
+
                 JobStepStatusEnum newStatus = 
HadoopJobStatusChecker.checkStatus(job, output);
                 if (status == JobStepStatusEnum.KILLED) {
-                    executableManager.updateJobOutput(getId(), 
ExecutableState.ERROR, Collections.<String, String> emptyMap(), "killed by 
admin");
+                    executableManager.updateJobOutput(getId(), 
ExecutableState.ERROR, hadoopCmdOutput.getInfo(), "killed by admin");
                     return new ExecuteResult(ExecuteResult.State.FAILED, 
"killed by admin");
                 }
                 if (status == JobStepStatusEnum.WAITING && (newStatus == 
JobStepStatusEnum.FINISHED || newStatus == JobStepStatusEnum.ERROR || newStatus 
== JobStepStatusEnum.RUNNING)) {
                     final long waitTime = System.currentTimeMillis() - 
getStartTime();
                     setMapReduceWaitTime(waitTime);
                 }
-                status = newStatus;
                 executableManager.addJobInfo(getId(), 
hadoopCmdOutput.getInfo());
+                status = newStatus;
                 if (status.isComplete()) {
                     final Map<String, String> info = hadoopCmdOutput.getInfo();
                     readCounters(hadoopCmdOutput, info);

Reply via email to