[ 
https://issues.apache.org/jira/browse/CASSANDRA-8738?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Donald Smith updated CASSANDRA-8738:
------------------------------------
    Description: 
Sometimes I do {{/etc/init.d/cassandra stop}} and it prints out OK, but the 
server is still running.  (This happens, for example, if it's busy doing GCs.)  
The current init script prints out OK after sleeping but without checking if 
the process really stopped. I suggest changing it to:
{noformat}
pd0-cassandra16 ~> diff -C 1 cassandra cassandra-original
*** cassandra   2015-02-04 09:15:58.088209988 -0800
--- cassandra-original  2015-02-04 09:15:40.293767501 -0800
***************
*** 69,77 ****
          sleep 5
!         THE_STATUS=`$0 status`
!         if [[ $THE_STATUS == *"stopped"* ]]
!         then
!            echo "OK"
!         else
!            echo "ERROR: could not stop the process: $THE_STATUS"
!         fi
          ;;
--- 69,71 ----
          sleep 5
!         echo "OK"
          ;;
{noformat}
Then it prints out OK only if the stop succeeded. Otherwise it prints out a 
message like
{quote}
ERROR: could not stop the process: cassandra (pid  10764) is running...
{quote}

  was:
Sometimes I do {{/etc/init.d/cassandra stop}} and it prints out OK, but the 
server is still running.  (This happens, for example, if it's busy doing GCs.)  
The current init script prints out OK after sleeping but without checking if 
the process really stopped. I suggest changing it to:
{noformat}
pd0-cassandra16 ~> diff -C 1 cassandra cassandra-original
*** cassandra   2015-02-04 09:15:58.088209988 -0800
--- cassandra-original  2015-02-04 09:15:40.293767501 -0800
***************
*** 69,77 ****
          sleep 5
!         THE_STATUS=`$0 status`
!         if [[ $THE_STATUS == *"stopped"* ]]
!         then
!            echo "OK"
!         else
!            echo "ERROR: could not stop the process: $THE_STATUS"
!         fi
          ;;
--- 69,71 ----
          sleep 5
!         echo "OK"
          ;;
{noformat}
Then it prints out OK only if the stop succeeded. Otherwise it prints out a 
message like
{quote}
"ERROR: could not stop the process: cassandra (pid  10764) is running...
{quote}


> "/etc/init.d/cassandra stop" prints OK even when it doesn't work
> ----------------------------------------------------------------
>
>                 Key: CASSANDRA-8738
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8738
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Donald Smith
>
> Sometimes I do {{/etc/init.d/cassandra stop}} and it prints out OK, but the 
> server is still running.  (This happens, for example, if it's busy doing 
> GCs.)  The current init script prints out OK after sleeping but without 
> checking if the process really stopped. I suggest changing it to:
> {noformat}
> pd0-cassandra16 ~> diff -C 1 cassandra cassandra-original
> *** cassandra   2015-02-04 09:15:58.088209988 -0800
> --- cassandra-original  2015-02-04 09:15:40.293767501 -0800
> ***************
> *** 69,77 ****
>           sleep 5
> !         THE_STATUS=`$0 status`
> !         if [[ $THE_STATUS == *"stopped"* ]]
> !         then
> !            echo "OK"
> !         else
> !            echo "ERROR: could not stop the process: $THE_STATUS"
> !         fi
>           ;;
> --- 69,71 ----
>           sleep 5
> !         echo "OK"
>           ;;
> {noformat}
> Then it prints out OK only if the stop succeeded. Otherwise it prints out a 
> message like
> {quote}
> ERROR: could not stop the process: cassandra (pid  10764) is running...
> {quote}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to