Worker dies with a segfault error

greekduke nginx-forum at nginx.us
Tue Mar 4 15:07:28 UTC 2014


Hello

Below is the backtrace. I have seen the behaviour without eval and Postgres
and I will try to take a trace tomorrow. In the debug log actually there is
no error. Since I have only one worker the PID just changes to the new
worker without any info. Since I am using nginx as proxy only I am
suspecting that the error has to do with the proxy functionality.


[root at ape-01 nginx]# gdb /usr/local/nginx/sbin/nginx
/var/log/nginx/core.31000 
GNU gdb (GDB) Red Hat Enterprise Linux (7.2-60.el6_4.1)
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/local/nginx/sbin/nginx...done.
[New Thread 31000]
Missing separate debuginfo for /usr/local/pgsql/lib/libpq.so.5
Try: yum --disablerepo='*' --enablerepo='*-debug*' install
/usr/lib/debug/.build-id/50/df7babee4e7e51a305aed74590ad3d040c5ffb
Missing separate debuginfo for 
Try: yum --disablerepo='*' --enablerepo='*-debug*' install
/usr/lib/debug/.build-id/81/a81be2e44c93640adedb62adc93a47f4a09dd1
Reading symbols from /lib64/libpthread.so.0...(no debugging symbols
found)...done.
[Thread debugging using libthread_db enabled]
Loaded symbols for /lib64/libpthread.so.0
Reading symbols from /lib64/libcrypt.so.1...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libcrypt.so.1
Reading symbols from /usr/local/pgsql/lib/libpq.so.5...(no debugging symbols
found)...done.
Loaded symbols for /usr/local/pgsql/lib/libpq.so.5
Reading symbols from /lib64/libpcre.so.0...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libpcre.so.0
Reading symbols from /usr/lib64/libcrypto.so.10...(no debugging symbols
found)...done.
Loaded symbols for /usr/lib64/libcrypto.so.10
Reading symbols from /lib64/libz.so.1...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libz.so.1
Reading symbols from /lib64/libc.so.6...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libc.so.6
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols
found)...done.
Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /lib64/libfreebl3.so...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libfreebl3.so
Reading symbols from /lib64/libdl.so.2...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libdl.so.2
Reading symbols from /lib64/libnss_files.so.2...(no debugging symbols
found)...done.
Loaded symbols for /lib64/libnss_files.so.2
Core was generated by `nginx: worker process                                
         '.
Program terminated with signal 11, Segmentation fault.
#0  ngx_pnalloc (pool=0x0, size=950) at src/core/ngx_palloc.c:155
155         if (size <= pool->max) {
Missing separate debuginfos, use: debuginfo-install
glibc-2.12-1.132.el6.x86_64 nss-softokn-freebl-3.14.3-9.el6.x86_64
openssl-1.0.1e-15.el6.x86_64 pcre-7.8-6.el6.x86_64 zlib-1.2.3-29.el6.x86_64
(gdb) backtrace full
#0  ngx_pnalloc (pool=0x0, size=950) at src/core/ngx_palloc.c:155
        m = <value optimized out>
        p = <value optimized out>
#1  0x0000000000437b20 in ngx_http_log_handler (r=0x1bfb540) at
src/http/modules/ngx_http_log_module.c:323
        line = <value optimized out>
        p = <value optimized out>
        len = 950
        i = <value optimized out>
        l = <value optimized out>
        log = <value optimized out>
        op = 0x19d6358
        buffer = <value optimized out>
        lcf = 0x19e8b18
#2  0x000000000042d9dd in ngx_http_log_request (r=0x1bfb540) at
src/http/ngx_http_request.c:3455
        i = <value optimized out>
        n = 1
        log_handler = 0x1a02868
#3  0x000000000042e04e in ngx_http_free_request (r=0x1bfb540, rc=0) at
src/http/ngx_http_request.c:3402
        log = 0x1b400f0
        pool = <value optimized out>
        linger = {l_onoff = 568, l_linger = 0}
        cln = 0x0
        ctx = <value optimized out>
#4  0x000000000042fe5b in ngx_http_set_keepalive (r=0x1bfb540) at
src/http/ngx_http_request.c:2840
        tcp_nodelay = <value optimized out>
        rev = 0x7fc3cce9d3f8
        b = 0x1b402d0
---Type <return> to continue, or q <return> to quit---
        i = <value optimized out>
        f = <value optimized out>
        wev = <value optimized out>
        c = 0x7fc3cd0a74d0
        hc = 0x1b40138
        clcf = 0x19e8890
#5  ngx_http_finalize_connection (r=0x1bfb540) at
src/http/ngx_http_request.c:2483
        clcf = 0x19e8890
#6  0x0000000000430724 in ngx_http_finalize_request (r=0x1bfb540, rc=-4) at
src/http/ngx_http_request.c:2213
        c = 0x7fc3cd0a74d0
        pr = <value optimized out>
#7  0x000000000042be5d in ngx_http_core_content_phase (r=0x1bfb540,
ph=0x1a03468) at src/http/ngx_http_core_module.c:1410
        root = 4369847
        rc = <value optimized out>
        path = {len = 28761224, data = 0x19bdde0 "\320\353\233\001"}
#8  0x0000000000426873 in ngx_http_core_run_phases (r=0x1bfb540) at
src/http/ngx_http_core_module.c:888
        rc = <value optimized out>
        ph = 0x1a03378
        cmcf = <value optimized out>
#9  0x000000000042db58 in ngx_http_run_posted_requests (c=0x7fc3cd0a74d0) at
src/http/ngx_http_request.c:2171
        r = 0x1bfb540
        ctx = <value optimized out>
        pr = <value optimized out>
#10 0x0000000000440cfb in ngx_http_upstream_handler (ev=0x7fc3cce9e438) at
src/http/ngx_http_upstream.c:980
        c = 0x7fc3cd0a74d0
        r = 0x1b6d1d0
        ctx = <value optimized out>
---Type <return> to continue, or q <return> to quit---
        u = 0x1b6dc88
#11 0x0000000000423257 in ngx_epoll_process_events (cycle=0x19bdde0,
timer=<value optimized out>, flags=<value optimized out>)
    at src/event/modules/ngx_epoll_module.c:691
        events = 1
        revents = 5
        instance = <value optimized out>
        i = <value optimized out>
        level = <value optimized out>
        err = <value optimized out>
        rev = 0x7fc3cce9e438
        wev = <value optimized out>
        queue = <value optimized out>
        c = 0x7fc3cd0a92d0
#12 0x000000000041abd3 in ngx_process_events_and_timers (cycle=0x19bdde0) at
src/event/ngx_event.c:248
        flags = 1
        timer = 4998
        delta = 1393942527536
#13 0x0000000000421a82 in ngx_worker_process_cycle (cycle=0x19bdde0,
data=<value optimized out>)
    at src/os/unix/ngx_process_cycle.c:816
        worker = <value optimized out>
        i = <value optimized out>
        c = <value optimized out>
#14 0x00000000004201ac in ngx_spawn_process (cycle=0x19bdde0, proc=0x42198c
<ngx_worker_process_cycle>, data=0x0, 
    name=0x4771b3 "worker process", respawn=-3) at
src/os/unix/ngx_process.c:198
        on = 1
        pid = 0
        s = 0
---Type <return> to continue, or q <return> to quit---
#15 0x0000000000420e9a in ngx_start_worker_processes (cycle=0x19bdde0, n=1,
type=-3) at src/os/unix/ngx_process_cycle.c:364
        i = <value optimized out>
        ch = {command = 1, pid = 0, slot = 0, fd = 0}
#16 0x0000000000422103 in ngx_master_process_cycle (cycle=0x19bdde0) at
src/os/unix/ngx_process_cycle.c:136
        title = 0x1a03543 "master process /usr/local/nginx/sbin/nginx -c
/usr/local/nginx/conf/nginx.conf"
        p = <value optimized out>
        size = 79
        i = 3
        n = <value optimized out>
        sigio = <value optimized out>
        set = {__val = {0 <repeats 16 times>}}
        itv = {it_interval = {tv_sec = 26996763, tv_usec = 0}, it_value =
{tv_sec = 0, tv_usec = 0}}
        live = <value optimized out>
        delay = <value optimized out>
        ls = <value optimized out>
        ccf = 0x19bed58
#17 0x0000000000404e24 in main (argc=<value optimized out>, argv=<value
optimized out>) at src/core/nginx.c:407
        i = <value optimized out>
        log = 0x6a0fa0
        cycle = 0x19bdde0
        init_cycle = {conf_ctx = 0x0, pool = 0x19bd8f0, log = 0x6a0fa0,
new_log = {log_level = 0, file = 0x0, connection = 0, 
            handler = 0, data = 0x0, action = 0x0, next = 0x0},
log_use_stderr = 0, files = 0x0, free_connections = 0x0, 
          free_connection_n = 0, reusable_connections_queue = {prev = 0x0,
next = 0x0}, listening = {elts = 0x0, nelts = 0, 
            size = 0, nalloc = 0, pool = 0x0}, paths = {elts = 0x0, nelts =
0, size = 0, nalloc = 0, pool = 0x0}, open_files = {
            last = 0x0, part = {elts = 0x0, nelts = 0, next = 0x0}, size =
0, nalloc = 0, pool = 0x0}, shared_memory = {last = 0x0, 
            part = {elts = 0x0, nelts = 0, next = 0x0}, size = 0, nalloc =
0, pool = 0x0}, connection_n = 0, files_n = 0, 
          connections = 0x0, read_events = 0x0, write_events = 0x0,
old_cycle = 0x0, conf_file = {len = 32, 
---Type <return> to continue, or q <return> to quit---
            data = 0x7fff2bd1df50 ""}, conf_param = {len = 0, data = 0x0},
conf_prefix = {len = 22, data = 0x7fff2bd1df50 ""}, 
          prefix = {len = 17, data = 0x472f78 "/usr/local/nginx/"},
lock_file = {len = 0, data = 0x0}, hostname = {len = 0, 
            data = 0x0}}
        ccf = <value optimized out>
(gdb)

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



More information about the nginx mailing list