Repository: incubator-trafficcontrol
Updated Branches:
  refs/heads/master 5c7ecd2f1 -> 910e47448


tomcat init script fixes for traffic_router

Improving the reliabitiy of STOPPING tomcat service.

1. Add following variables to init script:
SHUTDOWN_TIMEOUT (default 10 seconds)
SHUTDOWN_FORCE (default "true" - kill if the shutdown times out)

2. Only export $CATALINA_OPTS when needed (to start the server)
Tomcat control scripts do this fun thing where to stop the current
jvm, catalina *starts* a second jvm, which then tells the first
to stop. This is all well and good, except we really don't want
to start this second jvm with our custom $CATALINA_OPTS, especially
on servers under memory pressure!


Project: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/commit/43c106a5
Tree: 
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/tree/43c106a5
Diff: 
http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/diff/43c106a5

Branch: refs/heads/master
Commit: 43c106a53abce56ca18388a67725b34c589e6344
Parents: 5c7ecd2
Author: Jason Tucker <[email protected]>
Authored: Tue Jul 11 16:59:32 2017 -0400
Committer: Jeff Elsloo <[email protected]>
Committed: Wed Jul 12 09:54:18 2017 -0600

----------------------------------------------------------------------
 traffic_router/core/src/main/etc/init.d/tomcat | 20 ++++++++++++++------
 1 file changed, 14 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/43c106a5/traffic_router/core/src/main/etc/init.d/tomcat
----------------------------------------------------------------------
diff --git a/traffic_router/core/src/main/etc/init.d/tomcat 
b/traffic_router/core/src/main/etc/init.d/tomcat
old mode 100644
new mode 100755
index caaff69..9b94737
--- a/traffic_router/core/src/main/etc/init.d/tomcat
+++ b/traffic_router/core/src/main/etc/init.d/tomcat
@@ -31,13 +31,18 @@
 
 . /etc/rc.d/init.d/functions
 
-export NAME=tomcat
-export TOMCAT_HOME=/opt/$NAME
-export CATALINA_PID=/var/run/tomcat/$NAME.pid
-export CATALINA_OPTS="-Xms512m -Xmx8192m 
-Dlog4j.configuration=file:///opt/traffic_router/conf/log4j.properties"
-export TOMCAT_LOCK=/var/lock/subsys/$NAME
+NAME=tomcat
+TOMCAT_HOME=/opt/$NAME
+CATALINA_PID=/var/run/tomcat/$NAME.pid
+TOMCAT_LOCK=/var/lock/subsys/$NAME
+CATALINA_OPTS="-Xms512m -Xmx8192m 
-Dlog4j.configuration=file:///opt/traffic_router/conf/log4j.properties"
+SHUTDOWN_TIMEOUT=10
+SHUTDOWN_FORCE=true
+
+export NAME TOMCAT_HOME CATALINA_PID TOMCAT_LOCK
 
 start() {
+    export CATALINA_OPTS
     runuser -s /bin/bash root -c "$TOMCAT_HOME/bin/startup.sh"
        RETVAL=$?
        echo -n "Starting $NAME"
@@ -52,7 +57,9 @@ start() {
 
 
 stop() {
-       $TOMCAT_HOME/bin/shutdown.sh
+       SHUTDOWN_OPTS="$SHUTDOWN_TIMEOUT"
+       [[ $SHUTDOWN_FORCE == "true" ]] && SHUTDOWN_OPTS="$SHUTDOWN_TIMEOUT 
-force"
+       $TOMCAT_HOME/bin/shutdown.sh $SHUTDOWN_OPTS
        RETVAL=$?
        echo -n "Stopping $NAME"
        if [ $RETVAL = 0 ]; then
@@ -80,6 +87,7 @@ case "$1" in
                fi 
                ;; 
        force-stop)
+               # this is useless on el7, and of dubious usefulness on el6
                stop
                ;; 
        restart)

Reply via email to