On Fri, Oct 16, 2009 at 1:10 PM, Joe Lewis <j...@joe-lewis.com> wrote: > Michael B Allen wrote: >> >> I have a customer who very occasionally sees apache workers hang. I'm >> pretty sure this is caused by an errant module but I don't know which >> one. >> >> Is there any way to determine which module is causing Apache workers to >> hang? >> >> Can I temporarily disable that SIGTERM so that I can have enough time >> to attach GDB to the hanging processes? >> >> Mike >> > > Perhaps run it in a non-forking mode (httpd -X -k start) inside of gdb and > see what it hangs on?
If I run it in gdb like you suggest: # gdb httpd (gdb) run -X -k start I cannot get httpd to run module deinitialization. Meaning if I do apachectl stop or httpd -X -k stop or graceful-stop in another terminal, it just kills the whole process group. Since the problem is hanging during module deinitialization I don't think this is going to help me. How do I shutdown httpd so that it runs the module deinitialization routines? Otherwise does anyone have a web-svn pointer to the code that's calling the SIGTERM? Maybe I can find a way to disable it. Mike