You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@httpd.apache.org by Adam Brenner <ae...@uci.edu> on 2014/01/28 07:13:02 UTC

[users@httpd] Apache 2.2.26 - POST Requests Failing after SIGTERM Signal Received

Howdy,

We are experiencing an issue where POST requests are failing after
Apache 2.2.26 receives a SIGTERM and restarts. The response received
from CURL is:

  curl: (52) Empty reply from server

Before the SIGTERM, we are receiving a response from the server. No
proxy or filtering is occurring between the CURL POST request and
Apache. This problem is reproducible in both PHP and a CGI script
(perl). Because of this, we are not looking into any module (PHP).
Perl was ran via hashbang and not via mod_perl. mod_security has no
configuration and not filtering any rules, same with any custom
rewrite rules. Apache was compiled with:

                ./configure
                        --disable-v4-mapped
                        --enable-deflate
                        --enable-expires
                        --enable-headers
                        --enable-info
                        --enable-logio
                        --enable-proxy
                        --enable-rewrite
                        --enable-ssl
                        --enable-suexec
                        --enable-unique-id
                        --prefix=/usr/local/apache
                        --with-included-apr
                        --with-mpm=prefork
                        --with-pcre=/opt/pcre
                        --with-ssl=/usr
                        --with-suexec-caller=nobody
                        --with-suexec-docroot=/
                        --with-suexec-gidmin=100
                        --with-suexec-logfile=/usr/local/apache/logs/suexec_log
                        --with-suexec-uidmin=100
                        --with-suexec-userdir=public_html


Right after the SIGTERM signal is received, the process via ps looks like so:

    $ lsof -p 24428 | grep bin
    httpd 24428 root txt REG 8,3 1213648 38274047
/usr/local/apache/bin/httpd (deleted)

It appears the initial root process spawned by httpd is provided with
a SIGTERM shortly after a graceful restart (random interval), and the
root process that spawns in it place to maintain the existing child
processes does not appear to be entirely functional, and actually
reports to be deleted as far as the /proc/*/exec information is
reporting. This directly coincides with the point where POST ceases to
work, after graceful restarts.


Running the httpd service with strace showed the following
information[1]. The core dumps produced from httpd are below:

                (gdb) where
                #0 0x00007f524f8cc86f in ?? ()
                #1 0x0000000000440cdf in ap_is_recursion_limit_exceeded ()
                #2 0x00000000004b8ade in ap_byterange_filter ()
                #3 0x000000000045bbbf in get_ptoken ()
                #4 0x000000000045c070 in parse_expr ()
                #5 0x00000000004e49c9 in ?? ()
                #6 0x00007f524fb3c710 in ?? ()
                #7 0x0000000000000000 in ?? ()


Any help in tracking down this issue would be greatly appreciated as
the ability to not process POST requests are making sites unusable.

Would it be better to submit a BugZilla report on this? I tried
searching the list however could not find other bugs related to this.
Or perhaps the developer list?


[1]: https://gist.github.com/abrenner/8662912/raw/4b56aa0d114f678ddfdd3b8e6b90e4cb92317c20/gistfile1.txt


--
Adam Brenner
Computer Science, Undergraduate Student
Donald Bren School of Information and Computer Sciences

System Administrator, HPC Cluster
Office of Information Technology
http://hpc.oit.uci.edu/

University of California, Irvine
www.ics.uci.edu/~aebrenne/
aebrenne@uci.edu

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


Re: [users@httpd] Apache 2.2.26 - POST Requests Failing after SIGTERM Signal Received

Posted by Eric Covener <co...@gmail.com>.
> Any help in tracking down this issue would be greatly appreciated as
> the ability to not process POST requests are making sites unusable.

SIGTERM is the signal used to shut down immediately.
http://httpd.apache.org/docs/2.2/stopping.html

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