Bug 17814: koha-plack --stop should make sure that Plack really stop
koha-plack --stop doesn't ensure that Plack was really stopped before returning So in case that koha-plack --stop was quickly follows by koha-plack --start (e.g. logrotate), it could leave Plack in stop state. This is due to koha-plack --start think that Plack was already started, while it actually is being stopped. For me I think this is the cause why I got random Plack stop when logrotate is run. It should be similar to the case of Zebra in Bug #16885, and the solution might be the same: adding "--retry=TERM/30/KILL/5;" to start-stop-daemon command. TEST PLAN --------- 1) Login to staff client and do something that will hold connection for a long time, e.g. a batch import or a slow report. 2) sudo koha-plack --stop mykoha 3) ps aux | grep plack <-- a Plack process will still running work in 1) 4) wait for 1) to finish and all Plack processes exit 5) sudo koha-plack --start mykoha 6) apply the patch 7) repeat step 1)-2) 8) ps aux | grep plack <-- There should be no Plack process running now 9) Note that work in step 1) might get terminated midway. Since we force Plack to stop after some wait. Signed-off-by: Marc Véron <veron@veron.ch> Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
This commit is contained in:
parent
ea2196c652
commit
afb62d9a6c
1 changed files with 1 additions and 1 deletions
2
debian/scripts/koha-plack
vendored
2
debian/scripts/koha-plack
vendored
|
@ -113,7 +113,7 @@ stop_plack()
|
|||
|
||||
log_daemon_msg "Stopping Plack daemon for ${instancename}"
|
||||
|
||||
if start-stop-daemon --pidfile ${PIDFILE} --stop; then
|
||||
if start-stop-daemon --pidfile ${PIDFILE} --stop --retry=TERM/30/KILL/5; then
|
||||
log_end_msg 0
|
||||
else
|
||||
log_end_msg 1
|
||||
|
|
Loading…
Reference in a new issue