[Bug 750141] Re: /etc/init.d/sendsigs should stop Upstart jobs with no stop on condition
James Hunt
750141 at bugs.launchpad.net
Fri Nov 22 11:48:51 UTC 2013
*** This bug is a duplicate of bug 1072759 ***
https://bugs.launchpad.net/bugs/1072759
** This bug has been marked a duplicate of bug 1072759
sendsigs should only ignore upstart job with specify 'stop on' explicitly
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to sysvinit in Ubuntu.
https://bugs.launchpad.net/bugs/750141
Title:
/etc/init.d/sendsigs should stop Upstart jobs with no stop on
condition
Status in “sysvinit” package in Ubuntu:
Invalid
Bug description:
Binary package hint: sysvinit
If an Upstart job has no 'stop on' condition, Upstart won't stop any
instances of it.
However, if a job has no 'stop on', but *does* specify 'respawn' we
have a potential problem at shutdown since if that job stops, it will
be restarted by Upstart until its respawn limit is reached.
Further, if the job does not stop, it will never be killed by
sendsigs.
The solution is to modify the upstart_jobs() function in
/etc/init.d/sendsigs to only return PIDS for jobs which *do* have a
'stop on' specified. This can be achieved by feeding the list of jobs
to 'initctl show-config' and filtering on those jobs which have no
'stop on' line.
See http://upstart.ubuntu.com/cookbook/#list-all-jobs-with-no-stop-on-
condition for an example of how to list jobs with no "stop on"
condition.
The best solution for jobs which do not specify a 'stop on' condition:
- call "stop --no-wait $job"
- do NOT add the associated job processes to OMITPIDS to handle the case where 'stop' fails to stop the jobs in a "reasonable amount of time" (for example for jobs which specify ridiculously large values for 'kill timeout').
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/sysvinit/+bug/750141/+subscriptions
More information about the foundations-bugs
mailing list