diff --git a/extensions/spark/kyuubi-extension-spark-3-3/src/main/scala/org/apache/spark/sql/FinalStageResourceManager.scala b/extensions/spark/kyuubi-extension-spark-3-3/src/main/scala/org/apache/spark/sql/FinalStageResourceManager.scala index 7a0ae1592d9..dc573f83867 100644 --- a/extensions/spark/kyuubi-extension-spark-3-3/src/main/scala/org/apache/spark/sql/FinalStageResourceManager.scala +++ b/extensions/spark/kyuubi-extension-spark-3-3/src/main/scala/org/apache/spark/sql/FinalStageResourceManager.scala @@ -170,7 +170,7 @@ case class FinalStageResourceManager(session: SparkSession) // Evict the rest executors according to the shuffle block size executorToBlockSize.toSeq.sortBy(_._2).foreach { case (id, _) => - if (executorIdsToKill.length < expectedNumExecutorToKill) { + if (executorIdsToKill.length < expectedNumExecutorToKill && existedExecutors.contains(id)) { executorIdsToKill.append(id) } }