/srv/irclogs.ubuntu.com/2012/08/15/#upstart.txt

mattrae_yay there's an upstart channel :) hopefully someone has some ideas there.. i have an upstart job stuck in pre-start.. 'status nova-network' reports 'nova-network stop/pre-start, process 389' but there is no process with PID 38917:47
mattrae_how do i go about debugging this state and i'm wondering why there is no pid 38917:47
mattrae_?17:48
mattrae_this isn't the stock nova-network upstart job.. its customized and i don't have all the scripts called in pre-start. the person i'm helping has ran the upstart job script manually without problems17:53
mattrae_the pre-start script does do some stuff creating a cgroup for nova-network.. wondering if that could possibly be related to the pid question17:54
mattrae_anything i should take a look at?17:54
mattrae_and any way to deal with a upstart job stuck in pre-start?17:55
mattrae_so far this has only happened after a reboot on initial startup17:56
SpamapSmattrae_: does your job perhaps specify 'expect fork' but the main process does not fork?18:16
SpamapSmattrae_: thats the only time I've seen upstart reference non-existant pids18:17
mattrae_SpamapS: ahh cool thanks.. yeah, no 'expect fork' is used19:02
SpamapSmattrae_: cgroups shouldn't have any bearing, as upstart has no awareness of them..19:03
SpamapSmattrae_: but if you were going to setup a cgroup, seems like it would need to be in the actual script section, not pre-start19:03
SpamapSdepends on how its being used I guess19:03
mattrae_oh good to know cgroups shouldn't be a problem. they're doing cgcreate in pre-start and cgexec in the actual script.19:06
mattrae_SpamapS: know of how to deal with a job stuck in pre-start?19:11
SpamapSmattrae_: well usually stop would do it19:13
SpamapSmattrae_: the fact that its waiting on a non-esistant process is very weird19:13
SpamapSmattrae_: anything in /var/log/syslog or /var/log/dmesg about the job?19:13
mattrae_SpamapS: ohh thanks, i will see what we can find in syslog or dmesg about the job19:23
SpamapSmattrae_: you might have to use one of the hack scripts out there that exhausts pid space up to the pid needed, and then lets upstart kill it off19:25
mattrae_SpamapS: ahh ok, in what case is that hack needed?19:29
SpamapSmattrae_: in the past I've only ever seen it with badd expect fork19:29
SpamapSmattrae_: never on pre-start19:29
SpamapSmattrae_: any way you can pastebin the conf?19:29
mattrae_SpamapS: ahh cool, sure here's the conf: http://pastebin.com/16MJZBv919:32
SpamapSmattrae_: yeah looks normal to me. Not sure why that would lose track.. but cgroups does seem like a logical choice since its the most process-weirdness-related thing in there :)19:34
mattrae_SpamapS: cool thanks for reviewing :) yeah cgroups did seem logical.. i'll see what more we can find out and if anything is in the logs19:35
mattrae_SpamapS: sorry to ask again, i was wondering if its possible to clear the upstart state when the job is stuck in pre-start. is reboot the only way?21:58
SpamapSmattrae_: you can write a program which "revives" that pid by forking until the pid counter wraps...21:59
SpamapSmattrae_: reboot is often simpler :)21:59
mattrae_SpamapS: ahh thanks, good to know that possiblity.. yeah i think rebooting will be easier :)22:00

Generated by irclog2html.py 2.7 by Marius Gedminas - find it at mg.pov.lt!