You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kylin.apache.org by xx...@apache.org on 2022/10/14 10:23:22 UTC

[kylin] branch main updated: KYLIN-5245 fix incorrect job status is displayed when deployMode is cluster execution error (#1959)

This is an automated email from the ASF dual-hosted git repository.

xxyu pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/kylin.git


The following commit(s) were added to refs/heads/main by this push:
     new 6face85dd8 KYLIN-5245 fix incorrect job status is displayed when deployMode is cluster execution error (#1959)
6face85dd8 is described below

commit 6face85dd87385aa19f355cb23ac7a3448254378
Author: Liu Zhao <49...@users.noreply.github.com>
AuthorDate: Fri Oct 14 18:23:18 2022 +0800

    KYLIN-5245 fix incorrect job status is displayed when deployMode is cluster execution error (#1959)
    
    Co-authored-by: zhaoliu4 <zh...@iflytek.com>
    Co-authored-by: XiaoxiangYu <xx...@apache.org>
---
 .../org/apache/kylin/engine/spark/application/SparkEntry.java | 11 ++++++++++-
 .../scala/org/apache/spark/application/JobWorkSpace.scala     |  5 +++--
 2 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/application/SparkEntry.java b/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/application/SparkEntry.java
index 31974f65bc..526b7bc0b9 100644
--- a/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/application/SparkEntry.java
+++ b/kylin-spark-project/kylin-spark-engine/src/main/java/org/apache/kylin/engine/spark/application/SparkEntry.java
@@ -22,6 +22,15 @@ import org.apache.spark.application.JobWorkSpace;
 
 public class SparkEntry {
     public static void main(String[] args) {
-        JobWorkSpace.execute(args);
+        int retCode = JobWorkSpace.execute(args);
+        if (retCode == 2) {
+            System.exit(1);
+        } else if (System.getProperty("spark.master").equals("yarn") && System.getProperty("spark.submit.deployMode").equals("cluster")) {
+            if (retCode == 1) {
+                throw new RuntimeException("Job failed!");
+            }
+        } else {
+            System.exit(retCode);
+        }
     }
 }
diff --git a/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/spark/application/JobWorkSpace.scala b/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/spark/application/JobWorkSpace.scala
index 7d1a324647..8c2c30a53e 100644
--- a/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/spark/application/JobWorkSpace.scala
+++ b/kylin-spark-project/kylin-spark-engine/src/main/scala/org/apache/spark/application/JobWorkSpace.scala
@@ -28,13 +28,14 @@ import org.apache.spark.internal.Logging
 import org.apache.spark.scheduler.KylinJobEventLoop
 
 object JobWorkSpace extends Logging {
-  def execute(args: Array[String]): Unit = {
+  def execute(args: Array[String]): Int = {
     try {
       val (application, appArgs) = resolveArgs(args)
       val eventLoop = new KylinJobEventLoop
       val worker = new JobWorker(application, appArgs, eventLoop)
       val monitor = new JobMonitor(eventLoop)
       val workspace = new JobWorkSpace(eventLoop, monitor, worker)
+
       if (System.getProperty("spark.master").equals("yarn") && System.getProperty("spark.submit.deployMode").equals("cluster")) {
         val res = workspace.run()
         if (res != 0) {
@@ -46,7 +47,7 @@ object JobWorkSpace extends Logging {
     } catch {
       case throwable: Throwable =>
         logError("Error occurred when init job workspace.", throwable)
-        System.exit(1)
+        2
     }
   }