From 1f6511cc7e924395c8a443c86cf66f6906836963 Mon Sep 17 00:00:00 2001 From: Dongjoon Hyun Date: Wed, 6 Aug 2025 21:24:54 -0700 Subject: [PATCH] [SPARK-53165][CORE] Add `SparkExitCode.CLASS_NOT_FOUND` --- .../main/scala/org/apache/spark/deploy/SparkSubmit.scala | 6 ++---- .../main/scala/org/apache/spark/util/SparkExitCode.scala | 3 +++ 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala b/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala index 7029980cdb44..1cd63849de63 100644 --- a/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala +++ b/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala @@ -996,14 +996,14 @@ private[spark] class SparkSubmit extends Logging { // TODO(SPARK-42375): Should point out the user-facing page here instead. logInfo("You need to specify Spark Connect jars with --jars or --packages.") } - throw new SparkUserAppException(CLASS_NOT_FOUND_EXIT_STATUS) + throw new SparkUserAppException(SparkExitCode.CLASS_NOT_FOUND) case e: NoClassDefFoundError => logError(log"Failed to load ${MDC(LogKeys.CLASS_NAME, childMainClass)}", e) if (e.getMessage.contains("org/apache/hadoop/hive")) { logInfo("Failed to load hive class.") logInfo("You need to build Spark with -Phive and -Phive-thriftserver.") } - throw new SparkUserAppException(CLASS_NOT_FOUND_EXIT_STATUS) + throw new SparkUserAppException(SparkExitCode.CLASS_NOT_FOUND) } val app: SparkApplication = if (classOf[SparkApplication].isAssignableFrom(mainClass)) { @@ -1080,8 +1080,6 @@ object SparkSubmit extends CommandLineUtils with Logging { private val SPARKR_PACKAGE_ARCHIVE = "sparkr.zip" private val R_PACKAGE_ARCHIVE = "rpkg.zip" - private val CLASS_NOT_FOUND_EXIT_STATUS = 101 - // Following constants are visible for testing. private[deploy] val YARN_CLUSTER_SUBMIT_CLASS = "org.apache.spark.deploy.yarn.YarnClusterApplication" diff --git a/core/src/main/scala/org/apache/spark/util/SparkExitCode.scala b/core/src/main/scala/org/apache/spark/util/SparkExitCode.scala index e8f8788243cd..0ffc2afd9635 100644 --- a/core/src/main/scala/org/apache/spark/util/SparkExitCode.scala +++ b/core/src/main/scala/org/apache/spark/util/SparkExitCode.scala @@ -45,6 +45,9 @@ private[spark] object SparkExitCode { OutOfMemoryError. */ val OOM = 52 + /** Exit due to ClassNotFoundException or NoClassDefFoundError. */ + val CLASS_NOT_FOUND = 101 + /** Exit because the driver is running over the given threshold. */ val DRIVER_TIMEOUT = 124