nginx + my module crashes only when ignore client abort = on

gadh nginx-forum at nginx.us
Thu Mar 14 15:36:58 UTC 2013


i use nginx ver 1.2.5 (also tried 1.2.7) with my module that sends
subrequest to an upstream, waits untill response get back, then goes to
backend upstream and fetch the regular web page from it.
when i add to nginx conf "proxy_ignore_client_abort on;", nginx crash with
signal 11 (seg fault) when i do "ab" test and stop it in the middle of the
(log: "client prematurely closed..." etc.).
when i cancel my subrequest - no crash
or: when i remove the proxy_ignore_client_abort (default off) - no crash,
even with the subrequest.

here's the core dump:
==================================
Program terminated with signal 11, Segmentation fault.
#0  0x000000000045926b in ngx_http_terminate_request (r=0x1964360, rc=0) at
src/http/ngx_http_request.c:2147
2147	    ngx_log_debug2(NGX_LOG_DEBUG_HTTP, r->connection->log, 0,
(gdb) bt
#0  0x000000000045926b in ngx_http_terminate_request (r=0x1964360, rc=0) at
src/http/ngx_http_request.c:2147
#1  0x0000000000458b98 in ngx_http_finalize_request (r=0x1964360, rc=0) at
src/http/ngx_http_request.c:1977
#2  0x0000000000459d80 in ngx_http_test_reading (r=0x1964360) at
src/http/ngx_http_request.c:2443
#3  0x00000000004587fc in ngx_http_request_handler (ev=0x192b428) at
src/http/ngx_http_request.c:1866
#4  0x000000000043f1e0 in ngx_epoll_process_events (cycle=0x18f0470,
timer=59782, flags=1) at src/event/modules/ngx_epoll_module.c:683
#5  0x000000000042eea4 in ngx_process_events_and_timers (cycle=0x18f0470) at
src/event/ngx_event.c:247
#6  0x000000000043ba36 in ngx_single_process_cycle (cycle=0x18f0470) at
src/os/unix/ngx_process_cycle.c:315
#7  0x000000000040a33a in main (argc=3, argv=0x7fff9e8fec18) at
src/core/nginx.c:409
=================================================
the cause of the crash: it appears thet "r->connection->log" is null or
garbaged - its being freed before by nginx core !

please help
TNX,
Gad

Posted at Nginx Forum: http://forum.nginx.org/read.php?2,237362,237362#msg-237362



More information about the nginx mailing list