This still won't be enough. I suggest something like this:

--- haproxy.old 2014-09-22 10:52:07.599718882 +0000
+++ haproxy.new 2014-09-22 10:51:34.815653158 +0000
@@ -46,7 +46,9 @@
                return 0
        fi
        for pid in $(cat $PIDFILE) ; do
-               /bin/kill $pid || return 4
+                if [ ! kill -0 $pid ]; then
+                   /bin/kill $pid || return 4
+                fi
        done
        rm -f $PIDFILE
        return 0

-- 
You received this bug notification because you are a member of Ubuntu
High Availability Team, which is subscribed to haproxy in Ubuntu.
https://bugs.launchpad.net/bugs/1038139

Title:
  Missing running check on init script

Status in “haproxy” package in Ubuntu:
  Confirmed
Status in “haproxy” source package in Trusty:
  Confirmed
Status in “haproxy” source package in Utopic:
  Confirmed

Bug description:
  Hi, this is the relevant version information:

  # lsb_release -rd
  Description:    Ubuntu 12.04 LTS
  Release:        12.04
  dpkg -l haproxy|tail -1
  ii  haproxy                             1.4.18-0ubuntu1                     
fast and reliable load balancing reverse proxy

  When I issue a stop to haproxy via the init script, on line 49 it tries to 
kill the process and returns 4 in case of failure, which then after iis the 
exit status of the script itself. 
  There are many reasons why stopping a process may fail, one of them is that 
the process wasn't actually running. In that case, I think the exit status of 
stop should be 0, since the process is stopped.
  This caused problems in the following scenario:  haproxy governed by 
pacemaker if the haproxy process stops abruptly for some reason (crash, 
oom-killer), pacemaker will try to stop and start it again, but it will fail to 
stop (exit 4, expected 0).
  To work around this, I added a check on the init script to see if the process 
was running, see patch attached.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/haproxy/+bug/1038139/+subscriptions

_______________________________________________
Mailing list: https://launchpad.net/~ubuntu-ha
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~ubuntu-ha
More help   : https://help.launchpad.net/ListHelp

Reply via email to