From 16c24e02a86dc9327e9a22bdf065efb9ccd64a3f Mon Sep 17 00:00:00 2001 From: Mateusz Korniak Date: Mon, 3 Jan 2011 15:21:34 +0000 Subject: [PATCH] - Updated to rc4. Fixed working as cassandra user. Fixed java class path to use java-jna. Working restart, though not using PLD scripts on stop. Changed files: cassandra-bin.spec -> 1.5 cassandra.in.sh -> 1.3 cassandra.init -> 1.3 --- cassandra-bin.spec | 12 ++++++++---- cassandra.in.sh | 2 +- cassandra.init | 29 ++++++++++++++++++++++++++--- 3 files changed, 35 insertions(+), 8 deletions(-) diff --git a/cassandra-bin.spec b/cassandra-bin.spec index b0f69b5..9eace70 100644 --- a/cassandra-bin.spec +++ b/cassandra-bin.spec @@ -1,18 +1,22 @@ %include /usr/lib/rpm/macros.java # TODO: Fix .init cassandra status does not work now. -# TODO: Fix .init restarts, now seems stopping does not wait until cassandra is really stopped ? +# TODO: Fix .init stop routine it is now subset of PLD default one +# TODO: Fix of data/ cassandra created dirs/files privilages (now they are all readable) +# TODO: Consider adding +# cassandra - memlock unlimited +# to /etc/security/limits.conf ? %define shname cassandra -%define rccode rc3 +%define rccode rc4 Summary: Cassandra database binary package Summary(pl.UTF-8): Baza danych Cassandra wersja binarna. Name: cassandra-bin Version: 0.7.0 -Release: 0.%{rccode}.3 +Release: 0.%{rccode}.1 License: ASF Group: Applications/Databases Source0: http://mirror.nyi.net/apache//cassandra/%{version}/apache-cassandra-%{version}-%{rccode}-bin.tar.gz -# Source0-md5: 8e5cfc07178cd57e05ef81cad18ef170 +# Source0-md5: 19b26eb1d25454a2da0731b769ab3066 Source1: cassandra.in.sh Source2: %{shname}.init URL: http://cassandra.apache.org/ diff --git a/cassandra.in.sh b/cassandra.in.sh index 01c91ac..4f29093 100644 --- a/cassandra.in.sh +++ b/cassandra.in.sh @@ -48,5 +48,5 @@ CLASSPATH=$CASSANDRA_CONF # :$cassandra_bin # for jar in /usr/share/cassandra/*.jar; do # CLASSPATH=$CLASSPATH:$jar # done -CLASSPATH=$CLASSPATH:/usr/share/cassandra/* +CLASSPATH=$CLASSPATH:/usr/share/cassandra/*:/usr/share/java/* diff --git a/cassandra.init b/cassandra.init index d38cf4a..8fdf15c 100644 --- a/cassandra.init +++ b/cassandra.init @@ -34,7 +34,7 @@ start() { # Check if the service is already running? if [ ! -f /var/lock/subsys/cassandra ]; then msg_starting cassandra - daemon /usr/sbin/cassandra -p /var/run/cassandra.pid + daemon --user cassandra /usr/sbin/cassandra -p /var/run/cassandra/cassandra.pid RETVAL=$? [ $RETVAL -eq 0 ] && touch /var/lock/subsys/cassandra else @@ -47,8 +47,31 @@ stop() { if [ -f /var/lock/subsys/cassandra ]; then # Stop daemons. msg_stopping cassandra - killproc --pidfile /var/run/cassandra.pid cassandra -TERM - rm -f /var/lock/subsys/cassandra + # TODO: Fix it to work it properly with default PLD starting script scheme + # I do not know how to make + pid=$(cat /var/run/cassandra/cassandra.pid) + ## echo "DEBUG: Using pid=$pid." + kill -TERM $pid + # 0 - call succeed + RETVAL=$? + if [ $RETVAL -eq 0 ]; then # Success, giving some time for cassandra to flush. + checkpid $pid && sleep 1 + checkpid $pid && sleep 3 + checkpid $pid && sleep 5 + if checkpid $pid; then + fail + log_failed "cassandra shutdown (timeout after -TERM)" + else + ok + log_success "cassandra shutdown" + fi + rm -f /var/lock/subsys/cassandra + else + # rm /var/lock/subsys/cassandra + fail + log_failed "cassandra shutdown (signalling error)" + fi + ## echo "DEBUG: kill retval: $RETVAL" else msg_not_running cassandra fi -- 2.44.0