diff --git bin/ext/hiveserver2.sh bin/ext/hiveserver2.sh index 42d3d798733e68281d04bbce1aa047387936d3e6..39e3d391ef1ac85fe5576cd2cb29335b50e59974 100644 --- bin/ext/hiveserver2.sh +++ bin/ext/hiveserver2.sh @@ -23,6 +23,21 @@ hiveserver2() { fi JAR=${HIVE_LIB}/hive-service-*.jar + # Set SENTRY_HOME if possible and add Sentry jars to classpath + if [[ -z "$SENTRY_HOME" ]] + then + if [[ -d ${HIVE_HOME}/../sentry ]] + then + export SENTRY_HOME=`readlink -m ${HIVE_HOME}/../sentry` + fi + fi + if [[ -n "$SENTRY_HOME" ]] + then + for f in ${SENTRY_HOME}/lib/*.jar; do + export HADOOP_CLASSPATH=${HADOOP_CLASSPATH}:${f} + done + fi + exec $HADOOP jar $JAR $CLASS $HIVE_OPTS "$@" } diff --git bin/ext/metastore.sh bin/ext/metastore.sh index 22b2d5dec569e84ad2f6bfd4731de4d2a6bdf4ed..abeaad4aff72b879767169210586c5b3ff7bde83 100644 --- bin/ext/metastore.sh +++ bin/ext/metastore.sh @@ -24,6 +24,21 @@ metastore() { fi JAR=${HIVE_LIB}/hive-service-*.jar + # Set SENTRY_HOME if possible and add Sentry jars to classpath + if [[ -z "$SENTRY_HOME" ]] + then + if [[ -d ${HIVE_HOME}/../sentry ]] + then + export SENTRY_HOME=`readlink -m ${HIVE_HOME}/../sentry` + fi + fi + if [[ -n "$SENTRY_HOME" ]] + then + for f in ${SENTRY_HOME}/lib/*.jar ${SENTRY_HOME}/lib/plugins/*.jar; do + export HADOOP_CLASSPATH=${HADOOP_CLASSPATH}:${f} + done + fi + # hadoop 20 or newer - skip the aux_jars option and hiveconf export HADOOP_OPTS="$HIVE_METASTORE_HADOOP_OPTS $HADOOP_OPTS"