blob: 4576f5683c15d0c1c88ac058ea67fd84c6976590 [file] [log] [blame]
# 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.
HADOOP_NAME="httpfs"
DAEMON="hadoop-$HADOOP_NAME"
DESC="Hadoop $HADOOP_NAME"
EXEC_PATH="/usr/lib/hadoop-httpfs/sbin/httpfs.sh"
SVC_USER="$HADOOP_NAME"
WORKING_DIR="/var/run/hadoop-httpfs"
DAEMON_FLAGS="$HADOOP_NAME"
CONF_DIR="/etc/$DAEMON/conf"
PIDFILE="/var/run/$DAEMON/hadoop-$SVC_USER-$HADOOP_NAME.pid"
CHKCONFIG=${CHKCONFIG:-"2345 90 10"}
CHKCONFIG="${CHKCONFIG%% *} 90 10"
generate_start() {
cat <<'__EOT__'
start() {
[ -x $EXEC_PATH ] || exit $ERROR_PROGRAM_NOT_INSTALLED
[ -d $CONF_DIR ] || exit $ERROR_PROGRAM_NOT_CONFIGURED
export HTTPFS_USER="$SVC_USER"
export HTTPFS_CONFIG="$CONF_DIR"
export HTTPFS_LOG=${HTTPFS_LOG:-"/var/log/hadoop-httpfs/"}
export HTTPFS_TEMP="$(dirname $PIDFILE)"
export HTTPFS_SLEEP_TIME="$SLEEP_TIME"
export CATALINA_BASE=${CATALINA_BASE:-"/var/lib/hadoop-httpfs/tomcat-deployment"}
export CATALINA_PID="$PIDFILE"
export CATALINA_TMPDIR="$HTTPFS_TEMP"
. /usr/lib/hadoop-httpfs/tomcat-deployment.sh
su -s /bin/bash -c "${EXEC_PATH} start $DAEMON_FLAGS" $HTTPFS_USER
for second in {5..0}
do
checkstatusofproc
RETVAL=$?
if [ "$RETVAL" -eq $RETVAL_SUCCESS ] ; then
break
fi
sleep 1
done
if [ $RETVAL -eq $STATUS_RUNNING ]; then
touch $LOCKFILE
log_success_msg "Started ${DESC} (${DAEMON}): "
else
log_failure_msg "Failed to start ${DESC}. Return value: $RETVAL"
fi
return $RETVAL
}
__EOT__
}
generate_stop() {
cat <<'__EOT__'
stop() {
# FIXME: workaround for BIGTOP-537
checkstatusofproc
if [ "$?" = "$STATUS_RUNNING" ] ; then
su -s /bin/bash $SVC_USER -c "${EXEC_PATH} stop $SLEEP_TIME -force"
RETVAL=$?
else
RETVAL=$RETVAL_SUCCESS
fi
if [ $RETVAL -eq $RETVAL_SUCCESS ]; then
log_success_msg "Stopped ${DESC}: "
rm -f $LOCKFILE $PIDFILE
else
log_failure_msg "Failure to stop ${DESC}. Return value: $RETVAL"
fi
}
__EOT__
}