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

wangzhen pushed a commit to branch branch-1.8
in repository https://gitbox.apache.org/repos/asf/kyuubi.git


The following commit(s) were added to refs/heads/branch-1.8 by this push:
     new d25ad1a14 [KYUUBI #6287] Avoid missing matche
d25ad1a14 is described below

commit d25ad1a14bc4ed468920ef3caa21fb36a6738a50
Author: wforget <[email protected]>
AuthorDate: Thu Apr 11 10:26:06 2024 +0800

    [KYUUBI #6287] Avoid missing matche
    
    # :mag: Description
    ## Issue References ๐Ÿ”—
    
    This pull request fixes #
    
    ## Describe Your Solution ๐Ÿ”ง
    
    Avoid matching error caused by failed stage.
    
    error detail:
    
    ```
    24/04/09 02:11:41 ERROR AsyncEventQueue: Listener SQLOperationListener 
threw an exception
    scala.MatchError: failed (of class java.lang.String)
            at 
org.apache.spark.kyuubi.SQLOperationListener.onStageCompleted(SQLOperationListener.scala:147)
            at 
org.apache.spark.scheduler.SparkListenerBus.doPostEvent(SparkListenerBus.scala:35)
            at 
org.apache.spark.scheduler.SparkListenerBus.doPostEvent$(SparkListenerBus.scala:28)
            at 
org.apache.spark.scheduler.AsyncEventQueue.doPostEvent(AsyncEventQueue.scala:37)
            at 
org.apache.spark.scheduler.AsyncEventQueue.doPostEvent(AsyncEventQueue.scala:37)
            at 
org.apache.spark.util.ListenerBus.postToAll(ListenerBus.scala:117)
            at 
org.apache.spark.util.ListenerBus.postToAll$(ListenerBus.scala:101)
            at 
org.apache.spark.scheduler.AsyncEventQueue.super$postToAll(AsyncEventQueue.scala:105)
            at 
org.apache.spark.scheduler.AsyncEventQueue.$anonfun$dispatch$1(AsyncEventQueue.scala:105)
            at 
scala.runtime.java8.JFunction0$mcJ$sp.apply(JFunction0$mcJ$sp.java:23)
            at scala.util.DynamicVariable.withValue(DynamicVariable.scala:62)
            at 
org.apache.spark.scheduler.AsyncEventQueue.org$apache$spark$scheduler$AsyncEventQueue$$dispatch(AsyncEventQueue.scala:100)
            at 
org.apache.spark.scheduler.AsyncEventQueue$$anon$2.$anonfun$run$1(AsyncEventQueue.scala:96)
            at 
org.apache.spark.util.Utils$.tryOrStopSparkContext(Utils.scala:1387)
            at 
org.apache.spark.scheduler.AsyncEventQueue$$anon$2.run(AsyncEventQueue.scala:96)
    ```
    
    ## Types of changes :bookmark:
    
    - [X] Bugfix (non-breaking change which fixes an issue)
    - [ ] New feature (non-breaking change which adds functionality)
    - [ ] Breaking change (fix or feature that would cause existing 
functionality to change)
    
    ## Test Plan ๐Ÿงช
    
    #### Behavior Without This Pull Request :coffin:
    
    #### Behavior With This Pull Request :tada:
    
    #### Related Unit Tests
    
    ---
    
    # Checklist ๐Ÿ“
    
    - [X] This patch was not authored or co-authored using [Generative 
Tooling](https://www.apache.org/legal/generative-tooling.html)
    
    **Be nice. Be informative.**
    
    Closes #6287 from wForget/hotfix2.
    
    Closes #6287
    
    01e96f051 [wforget] Avoid missing matche
    
    Authored-by: wforget <[email protected]>
    Signed-off-by: wforget <[email protected]>
    (cherry picked from commit 117d77a50fac06f43b8376a957833ec381e5b345)
    Signed-off-by: wforget <[email protected]>
---
 .../src/main/scala/org/apache/spark/kyuubi/SQLOperationListener.scala    | 1 +
 1 file changed, 1 insertion(+)

diff --git 
a/externals/kyuubi-spark-sql-engine/src/main/scala/org/apache/spark/kyuubi/SQLOperationListener.scala
 
b/externals/kyuubi-spark-sql-engine/src/main/scala/org/apache/spark/kyuubi/SQLOperationListener.scala
index 41970e10a..e6536a178 100644
--- 
a/externals/kyuubi-spark-sql-engine/src/main/scala/org/apache/spark/kyuubi/SQLOperationListener.scala
+++ 
b/externals/kyuubi-spark-sql-engine/src/main/scala/org/apache/spark/kyuubi/SQLOperationListener.scala
@@ -147,6 +147,7 @@ class SQLOperationListener(
                 jobInfo.numCompleteStages.getAndIncrement()
               }
             }
+          case _ => // do nothing, failed stage not counted to 
numCompleteStages
         }
         withOperationLog(super.onStageCompleted(stageCompleted))
       }

Reply via email to