4f4a9884d9
As sryza reported, spark-shell doesn't accept any flags. The root cause is wrong usage of spark-submit in spark-shell and it come to the surface by #1801 Author: Kousuke Saruta <sarutak@oss.nttdata.co.jp> Author: Cheng Lian <lian.cs.zju@gmail.com> Closes #1715, Closes #1864, and Closes #1861 Closes #1825 from sarutak/SPARK-2894 and squashes the following commits: 47f3510 [Kousuke Saruta] Merge branch 'master' of git://git.apache.org/spark into SPARK-2894 2c899ed [Kousuke Saruta] Removed useless code from java_gateway.py 98287ed [Kousuke Saruta] Removed useless code from java_gateway.py 513ad2e [Kousuke Saruta] Modified util.sh to enable to use option including white spaces 28a374e [Kousuke Saruta] Modified java_gateway.py to recognize arguments 5afc584 [Cheng Lian] Filter out spark-submit options when starting Python gateway e630d19 [Cheng Lian] Fixing pyspark and spark-shell CLI options
60 lines
2 KiB
Bash
60 lines
2 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
#
|
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
|
# contributor license agreements. See the NOTICE file distributed with
|
|
# this work for additional information regarding copyright ownership.
|
|
# The ASF licenses this file to You under the Apache License, Version 2.0
|
|
# (the "License"); you may not use this file except in compliance with
|
|
# the License. You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
#
|
|
|
|
# Gather all all spark-submit options into SUBMISSION_OPTS
|
|
function gatherSparkSubmitOpts() {
|
|
|
|
if [ -z "$SUBMIT_USAGE_FUNCTION" ]; then
|
|
echo "Function for printing usage of $0 is not set." 1>&2
|
|
echo "Please set usage function to shell variable 'SUBMIT_USAGE_FUNCTION' in $0" 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
# NOTE: If you add or remove spark-sumbmit options,
|
|
# modify NOT ONLY this script but also SparkSubmitArgument.scala
|
|
SUBMISSION_OPTS=()
|
|
APPLICATION_OPTS=()
|
|
while (($#)); do
|
|
case "$1" in
|
|
--master | --deploy-mode | --class | --name | --jars | --py-files | --files | \
|
|
--conf | --properties-file | --driver-memory | --driver-java-options | \
|
|
--driver-library-path | --driver-class-path | --executor-memory | --driver-cores | \
|
|
--total-executor-cores | --executor-cores | --queue | --num-executors | --archives)
|
|
if [[ $# -lt 2 ]]; then
|
|
"$SUBMIT_USAGE_FUNCTION"
|
|
exit 1;
|
|
fi
|
|
SUBMISSION_OPTS+=("$1"); shift
|
|
SUBMISSION_OPTS+=("$1"); shift
|
|
;;
|
|
|
|
--verbose | -v | --supervise)
|
|
SUBMISSION_OPTS+=("$1"); shift
|
|
;;
|
|
|
|
*)
|
|
APPLICATION_OPTS+=("$1"); shift
|
|
;;
|
|
esac
|
|
done
|
|
|
|
export SUBMISSION_OPTS
|
|
export APPLICATION_OPTS
|
|
}
|