aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Panning <tom.panning@nextcentury.com>2015-02-01 17:57:31 -0800
committerAndrew Or <andrew@databricks.com>2015-02-01 17:57:31 -0800
commit1ca0a1014e3782dd0045d6e403992ac5114486ad (patch)
tree361048b7837f72a04b6131bb986b4a8c90826ea8
parentc80194b334a358bb28ea70580dc50aef47136212 (diff)
downloadspark-1ca0a1014e3782dd0045d6e403992ac5114486ad.tar.gz
spark-1ca0a1014e3782dd0045d6e403992ac5114486ad.tar.bz2
spark-1ca0a1014e3782dd0045d6e403992ac5114486ad.zip
[SPARK-5176] The thrift server does not support cluster mode
Output an error message if the thrift server is started in cluster mode. Author: Tom Panning <tom.panning@nextcentury.com> Closes #4137 from tpanningnextcen/spark-5176-thrift-cluster-mode-error and squashes the following commits: f5c0509 [Tom Panning] [SPARK-5176] The thrift server does not support cluster mode
-rw-r--r--core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala9
-rwxr-xr-xsbin/start-thriftserver.sh2
2 files changed, 11 insertions, 0 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 050ba91eb2..c240bcd705 100644
--- a/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala
+++ b/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala
@@ -144,6 +144,8 @@ object SparkSubmit {
printErrorAndExit("Cluster deploy mode is not applicable to Spark shells.")
case (_, CLUSTER) if isSqlShell(args.mainClass) =>
printErrorAndExit("Cluster deploy mode is not applicable to Spark SQL shell.")
+ case (_, CLUSTER) if isThriftServer(args.mainClass) =>
+ printErrorAndExit("Cluster deploy mode is not applicable to Spark Thrift server.")
case _ =>
}
@@ -409,6 +411,13 @@ object SparkSubmit {
}
/**
+ * Return whether the given main class represents a thrift server.
+ */
+ private[spark] def isThriftServer(mainClass: String): Boolean = {
+ mainClass == "org.apache.spark.sql.hive.thriftserver.HiveThriftServer2"
+ }
+
+ /**
* Return whether the given primary resource requires running python.
*/
private[spark] def isPython(primaryResource: String): Boolean = {
diff --git a/sbin/start-thriftserver.sh b/sbin/start-thriftserver.sh
index 50e8e06418..070cc7a87e 100755
--- a/sbin/start-thriftserver.sh
+++ b/sbin/start-thriftserver.sh
@@ -26,6 +26,8 @@ set -o posix
# Figure out where Spark is installed
FWDIR="$(cd "`dirname "$0"`"/..; pwd)"
+# NOTE: This exact class name is matched downstream by SparkSubmit.
+# Any changes need to be reflected there.
CLASS="org.apache.spark.sql.hive.thriftserver.HiveThriftServer2"
function usage {