** Description changed:

- ========================================================
- SRU Justification:
- Impact: 'service haproxy stop' returns 4 if haproxy was already stopped.
- Development fix: check whether haproxy is running before trying to kill it
- Stable fix: same as development fix
- Test Case:
-       sudo service haproxy start
-       sudo killall -9 haproxy
-       sudo service haproxy stop
-       echo $?
-       ~=> this should print 0, not 4
-       sudo service haproxy start
-       sudo service haproxy stop
-       ~=> make sure this still correctly prints 0.
- Regression potential: if done wrongly we could further break the haproxy 
service stop.
- ========================================================
+ [Impact]
+ 
+ 'service haproxy stop' returns 4 if haproxy was already stopped.
+ 
+ [Test Case]
+ 
+ sudo service haproxy start
+ sudo killall -9 haproxy
+ sudo service haproxy stop
+ echo $?
+ ~=> this should print 0, not 4
+ sudo service haproxy start
+ sudo service haproxy stop
+ ~=> make sure this still correctly prints 0
+ 
+ [Regression Potential]
+ 
+ if done wrongly we could further break the haproxy service stop.
+ 
+ [Other Info]
+ 
  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.

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

Title:
  Missing running check on init script

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

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to