Files
impala/bin/start-catalogd.sh
Alex Behm 6483f53581 Additional options for JVM debugging in impala startup scripts.
Enables JVM debugging by default for the catalogd and impalads
created via bin/start-impala-cluster.py.
Adds a -jvm_args command line option for passing additional JVM args to
the catalogd and impalads.

Change-Id: I68e901661bd1fd7eefa05ba84dbacf29dd124685
Reviewed-on: http://gerrit.ent.cloudera.com:8080/1213
Tested-by: jenkins
Reviewed-by: Alex Behm <alex.behm@cloudera.com>
2014-01-08 10:54:40 -08:00

71 lines
2.0 KiB
Bash
Executable File

#!/bin/sh
# Copyright 2012 Cloudera Inc.
#
# Licensed 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.
# Starts up a Catalog Service with the specified command line arguments. An optional
# -build_type parameter can be passed to determine the build type to use.
set -e
set -u
BUILD_TYPE=debug
CATALOGD_ARGS=""
BINARY_BASE_DIR=${IMPALA_HOME}/be/build
JVM_DEBUG_PORT=""
JVM_SUSPEND="n"
JVM_ARGS=""
# Everything except for -build_type should be passed as a catalogd argument
for ARG in $*
do
case "$ARG" in
-build_type=debug)
BUILD_TYPE=debug
;;
-build_type=release)
BUILD_TYPE=release
;;
-build_type=*)
echo "Invalid build type. Valid values are: debug, release"
exit 1
;;
-jvm_debug_port=*)
JVM_DEBUG_PORT="${ARG#*=}"
;;
-jvm_suspend)
JVM_SUSPEND="y"
;;
-jvm_args=*)
JVM_ARGS="${ARG#*=}"
;;
*)
CATALOGD_ARGS="${CATALOGD_ARGS} ${ARG}"
esac
done
# Temporarily disable unbound variable checking in case JAVA_TOOL_OPTIONS is not set.
set +u
# Optionally enable Java debugging.
if [ -n "$JVM_DEBUG_PORT" ]; then
export JAVA_TOOL_OPTIONS="-agentlib:jdwp=transport=dt_socket,address=localhost:${JVM_DEBUG_PORT},server=y,suspend=${JVM_SUSPEND} ${JAVA_TOOL_OPTIONS}"
fi
# Optionally add additional JVM args.
if [ -n "$JVM_ARGS" ]; then
export JAVA_TOOL_OPTIONS="${JAVA_TOOL_OPTIONS} ${JVM_ARGS}"
fi
set -u
. ${IMPALA_HOME}/bin/set-classpath.sh
exec ${BINARY_BASE_DIR}/${BUILD_TYPE}/catalog/catalogd ${CATALOGD_ARGS}