Apache processes stuck in "Gracefully finishing" state
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
apache2 (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: apache
I have a big problem with apache 2.2.4-3ubuntu0.1 of latest gutsy.
Apache prefork uses a "internal dummy connection" to tell childs they should die. When apache emits that request to a child (too many idle workers, MaxRequestsPerChild reached...), the children correctly dies (is not longer a proc in the system), but the apache main process still thinks it's "Gracefully finishing".
Server status page shows processes on this state in a number increasing until Maxclients is reached and apache stops answering connections.
It can be reproduced on my system easily issuing a /etc/init.d/apache2 reload. With that I get a lot of connections in the 'G' state.
I'm also seeing problems with /etc/init.d/apache2 restart. It thinks its stoped too soon, and the start finds that the socket is still being used, logs are locked or other problems.
I have seen a maybe related issue on apache's bugzilla:
https:/
But I'm not sure.
It's on a xen virtual machine, maybe it's a problem related to this.
The reload problem is reported on Ubuntu bug #174805