Hi, Resending this mail, just in case anyone would have suggestions/inputs as how to fix this for connections that are in the ESTABLISHED state or FIN state or any other TCP state other than LISTEN
Thanks & Regards Devi On 2/5/07, Devi Krishna <[EMAIL PROTECTED]> wrote:
Hi Apache Gurus, I am seeing the following issue when I sent a graceful restart signal to httpd [run with proxy enabled] Processes on receiving SIGUSR1 seems to send a GET / HTTP/1.0 to the httpd itself. This seems to be a dummy request that each process is trying to send 127.0.0.1 [05/Feb/2007:13:35:25 +0000] "GET / HTTP/1.0" 400 284 127.0.0.1 [05/Feb/2007:13:35:25 +0000] "GET / HTTP/1.0" 400 284 127.0.0.1 [05/Feb/2007:13:35:25 +0000] "GET / HTTP/1.0" 400 284 127.0.0.1 [05/Feb/2007:13:35:25 +0000] "GET / HTTP/1.0" 400 284 127.0.0.1 [05/Feb/2007:13:35:25 +0000] "GET / HTTP/1.0" 400 284 Wondering if this is a known issue, and if there is any solution for it. I saw recent bug report regarding strange behaviour of mod_ssl on graceful restart, but in my case, I dont have mod_ssl enabled. Initially I saw this issue even when processes are in LISTEN state and sigusr1 is sent. I put in the following fix and that worked. File : httpd/server/mpm/prefork/prefork.c Function :child_main + if (ap_mpm_pod_check(pod) == APR_SUCCESS) { /* selected as idle? */ + ap_log_error(APLOG_MARK, APLOG_ERR, status, ap_server_conf, + "Dont process connection as graceful restart received from pod"); + break; + } + if (die_now) { + ap_log_error(APLOG_MARK, APLOG_ERR, status, ap_server_conf, + "Dont process connection as graceful restart received"); + break; + } current_conn = ap_run_create_connection(ptrans, ap_server_conf, csd, my_child_num, sbh, bucket_alloc); if (current_conn) { ap_process_connection(current_conn, csd); ap_lingering_close(current_conn); } However, for connections in ESTABLISHED state and other TCP states, I still see this issue. Your inputs would be of great help! Thanks & Regards Devi