I am running Apache 2.2 with mod_wsgi, Python 2.7 and mpm_worker. Occassionally, one of the worker processes gets stuck and all of it threads stop in writing state (as demostrated in the screenshot below).
This happens ~once in a day for one worker process.
I assume this is either because
Some internal problem in Apache
All of my Python threads inside the mod_wsgi worker process deadlock somehow
Thus far, the only remedy I have found is Apache full restart (not graceful).
I'd hope to find some pointers how to diagnose the issue what is causing it
Why Apace
Timeout
does not kill the worker threads / processes. Timetimeout
is one minute, but looks like those threads and workers have been running happily several hours on one request.Is it possible to obtain thread dump from inside
mod_wsgi
and see if the Python thread themselves are somehow deadlockedAny idea what could be causing this and how to remedy the situation?
Below is an screenshot showing Apache server-status
where one of the worker processes (1-0) is stuck.
After turning on
WSGIDaemonProcess
and switching to separate daemon processes this issue has not appeared anymore, as recommended in the linked question.