You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bugs@httpd.apache.org by bu...@apache.org on 2015/08/20 16:58:44 UTC

[Bug 53999] Deadlock between procmgr_send_spawn_cmd()/proctable_lock() in mod_fcgid and listener_thread() in worker_mpm

https://bz.apache.org/bugzilla/show_bug.cgi?id=53999

thomas@shadowweb.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |---

--- Comment #3 from thomas@shadowweb.org ---
Unfortunately I am able to reproduce the problem with a Debian Jessie
installation.

Using mpm_worker and mod_fcgid the following messages begin to appear in the
error log under heavy load (also triggerable via ab -c15):

[Mon Aug 17 15:21:13.509763 2015] [fcgid:emerg] [pid 21497:tid 139901035079424]
(35)Resource deadlock avoided: [client XXX.XXX.XXX.XXX:38964] mod_fcgid: can't
get pipe mutex
[...]
[Mon Aug 17 15:22:49.387129 2015] [fcgid:emerg] [pid 22016:tid 139900959545088]
(35)Resource deadlock avoided: [client XXX.XXX.XXX.XXX:39590] mod_fcgid: can't
lock process table in pid 22016
[Mon Aug 17 15:22:53.479254 2015] [fcgid:emerg] [pid 22047:tid 139901035079424]
(35)Resource deadlock avoided: [client XXX.XXX.XXX.XXX:39617] mod_fcgid: can't
lock process table in pid 22047
[...]


At the same time, gracefully terminated FCGI processes don't get
wait()/waitpid() ed and are left in a zombie state by Apache until
FcgidMaxProcessesPerClass are used up (then 503 errors).

Using mpm_event I was also able to reproduce the problem, however, the
frequency was greatly reduced.

The only solution for me up to this point is using mpm_prefork, with which the
error is not reproductible at all.

Apache version: 2.4.10
mod_fcgid version: 2.3.9
Linux kernel version: 3.16.7

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org