From 723abe2fc2cbdd89db552e6dd225efe1d4086ebe Mon Sep 17 00:00:00 2001 From: Eric Evans Date: Thu, 3 Oct 2013 09:40:39 -0500 Subject: [PATCH] eliminate redundant classpath creation Patch by eevans; reviewed by Anton Winter for CASSANDRA-6101 --- debian/cassandra.in.sh | 2 ++ debian/init | 23 ++++------------------- 2 files changed, 6 insertions(+), 19 deletions(-) diff --git a/debian/cassandra.in.sh b/debian/cassandra.in.sh index f618895b68..13005e2b46 100644 --- a/debian/cassandra.in.sh +++ b/debian/cassandra.in.sh @@ -18,3 +18,5 @@ done for jar in /usr/share/cassandra/*.jar; do CLASSPATH=$CLASSPATH:$jar done + +CLASSPATH="$CLASSPATH:$EXTRA_CLASSPATH" \ No newline at end of file diff --git a/debian/init b/debian/init index ce929a1af8..17901e83ab 100644 --- a/debian/init +++ b/debian/init @@ -77,26 +77,9 @@ fi # Depend on lsb-base (>= 3.0-6) to ensure that this file is present. . /lib/lsb/init-functions +# If JNA is installed, add it to EXTRA_CLASSPATH # -# Function that returns the applications classpath -# -classpath() -{ - cp="$EXTRA_CLASSPATH" - for j in /usr/share/$NAME/lib/*.jar; do - [ "x$cp" = "x" ] && cp=$j || cp=$cp:$j - done - for j in /usr/share/$NAME/*.jar; do - [ "x$cp" = "x" ] && cp=$j || cp=$cp:$j - done - - # use JNA if installed in standard location - [ -r /usr/share/java/jna.jar ] && cp="$cp:/usr/share/java/jna.jar" - - # Include the conf directory for purposes of log4j-server.properties, and - # commons-daemon in support of the daemonization class. - printf "$cp:$CONFDIR:/usr/share/java/commons-daemon.jar" -} +EXTRA_CLASSPATH="/usr/share/java/jna.jar:$EXTRA_CLASSPATH" # # Function that returns 0 if process is running, or nonzero if not. @@ -136,6 +119,8 @@ do_start() [ -e `dirname "$PIDFILE"` ] || \ install -d -ocassandra -gcassandra -m750 `dirname $PIDFILE` + export EXTRA_CLASSPATH + start-stop-daemon -S -c cassandra -a /usr/sbin/cassandra -q -p "$PIDFILE" -t >/dev/null || return 1 start-stop-daemon -S -c cassandra -a /usr/sbin/cassandra -b -p "$PIDFILE" -- \