nginx 0.7.62/0.8.20 ssl and "worker process ... exited on signal 11"

Maxim Dounin mdounin at mdounin.ru
Fri Oct 30 15:01:58 MSK 2009


Hello!

On Fri, Oct 30, 2009 at 12:21:56PM +0300, Andrey Y. Ostanovsky wrote:

> Maxim Dounin пишет:
> > On Fri, Oct 23, 2009 at 11:52:03AM +0400, Andrey Y. Ostanovsky wrote
> >> Maxim Dounin пишет:
> >>     
> >>> Либо это совсем плохой, негодный стек, либо gdb запускали не с тем 
> >>> бинарником.
> >>>
> >>> Я склоняюсь ко второму варианту - адреса переменных вполне похожи 
> >>> на правду, между тем как имена функций и файлы/строки - абсолютно 
> >>> левые
> >>>       
> >> Точно! Не с той коркой. Прошу прощения. Вот более правильный вариант:
> >>
> >> # gdb /usr/local/sbin/nginx-0.8.20 /var/tmp/80.nginx-0.8.20.core
> >> GNU gdb 6.1.1 [FreeBSD]
> >> Copyright 2004 Free Software Foundation, Inc.
> >> GDB is free software, covered by the GNU General Public License, and you are
> >> welcome to change it and/or distribute copies of it under certain
> >> conditions.
> >> Type "show copying" to see the conditions.
> >> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> >> This GDB was configured as "i386-marcel-freebsd"...
> >> Core was generated by `nginx-0.8.20'.
> >> Program terminated with signal 11, Segmentation fault.
> >> Reading symbols from /lib/libcrypt.so.4...done.
> >> Loaded symbols for /lib/libcrypt.so.4
> >> Reading symbols from /usr/local/lib/libpcre.so.0...done.
> >> Loaded symbols for /usr/local/lib/libpcre.so.0
> >> Reading symbols from /usr/lib/libssl.so.5...done.
> >> Loaded symbols for /usr/lib/libssl.so.5
> >> Reading symbols from /lib/libcrypto.so.5...done.
> >> Loaded symbols for /lib/libcrypto.so.5
> >> Reading symbols from /lib/libz.so.4...done.
> >> Loaded symbols for /lib/libz.so.4
> >> Reading symbols from /lib/libc.so.7...done.
> >> Loaded symbols for /lib/libc.so.7
> >> Reading symbols from /libexec/ld-elf.so.1...done.
> >> Loaded symbols for /libexec/ld-elf.so.1
> >> #0  0x283e18a3 in memcpy () from /lib/libc.so.7
> >> (gdb) bt
> >> #0  0x283e18a3 in memcpy () from /lib/libc.so.7
> >> #1  0x08077ad1 in ngx_ssl_send_chain (c=0x28567258, in=0x285d9f9c,
> >> limit=2012)
> >>     at src/event/ngx_event_openssl.c:973

[...]

Ага, понял с чем именно проблема, воспроизвёл.  Падает при 
использовании limit_rate для ssl.

Это, кстати, объясняет почему proxy_buffering off; ситуацию 
исправляет - с ним limit_rate отключается.

Подробнее буду смотреть позже (если Игорь не успеет раньше...).

Maxim Dounin





More information about the nginx-ru mailing list