mirror of
https://github.com/apache/impala.git
synced 2026-01-01 18:00:30 -05:00
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>
71 lines
2.0 KiB
Bash
Executable File
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}
|