<div dir="ltr">Добрый день!<div><br></div><div>Столкнулся со следующей ситуацией.</div><div>Платформа:</div><div># uname -a</div><div>SunOS sunos 5.11 11.3 i86pc i386 i86pc</div><div><br></div><div>Пытаюсь обновить бинарник на лету, согласно <a href="http://nginx.org/ru/docs/control.html#upgrade">http://nginx.org/ru/docs/control.html#upgrade</a></div><div>исходная версия nginx 1.11.3<br>целевой бинарник nginx 1.11.5<br><b><br></b></div><div>конфигурационный файл - дефолтный, без изменений.</div><div><b><br></b></div><div>опции сборки:</div><div><div>nginx version: nginx/1.11.3<br></div><div>built by gcc 4.8.2 (GCC) </div><div>configure arguments: --with-cc=gcc</div></div><div><br></div><div><div>nginx version: nginx/1.11.5</div><div>built by gcc 4.8.2 (GCC) </div><div>configure arguments: --with-cc=gcc</div><br class="inbox-inbox-Apple-interchange-newline"></div><div>Как указано в мануале, заменяю бинарный файл, делаю <br>kill -USR2 `cat /usr/local/nginx/logs/nginx.pid`<br>после чего nginx падает в core dump:</div><div><br></div><div>Backtrace:</div><div><div>GNU gdb (GDB) 7.6</div><div>Copyright (C) 2013 Free Software Foundation, Inc.</div><div>License GPLv3+: GNU GPL version 3 or later <<a href="http://gnu.org/licenses/gpl.html">http://gnu.org/licenses/gpl.html</a>></div><div>This is free software: you are free to change and redistribute it.</div><div>There is NO WARRANTY, to the extent permitted by law.  Type "show copying"</div><div>and "show warranty" for details.</div><div>This GDB was configured as "i386-pc-solaris2.11".</div><div>For bug reporting instructions, please see:</div><div><<a href="http://www.gnu.org/software/gdb/bugs/">http://www.gnu.org/software/gdb/bugs/</a>>...</div><div>Reading symbols from /export/home/at/Build/nginx-1.11.3/objs/nginx...done.</div><div>[New LWP 1]</div><div>[New LWP 1]</div><div>[Thread debugging using libthread_db enabled]</div><div>[New Thread 1 (LWP 1)]</div><div>Core was generated by `/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf'.</div><div>Program terminated with signal 11, Segmentation fault.</div><div>#0  0x0808f4c8 in ngx_signal_handler (signo=17) at src/os/unix/ngx_process.c:329</div><div>329<span class="Apple-tab-span" style="white-space:pre">     </span>    action = "";</div><div>(gdb) bt full</div><div>#0  0x0808f4c8 in ngx_signal_handler (signo=17) at src/os/unix/ngx_process.c:329</div><div>        action = 0x8068858 "he_key\" for \"scgi_cache\""</div><div>        ignore = 0</div><div>        err = 0</div><div>        sig = <optimized out></div><div>#1  0x075499fe in call_user_handler () from /lib/libc.so.1</div><div>No symbol table info available.</div><div>#2  <signal handler called></div><div>No symbol table info available.</div><div>#3  0x0755b565 in __sigsuspend () from /lib/libc.so.1</div><div>No symbol table info available.</div><div>#4  0x07547e0b in sigsuspend () from /lib/libc.so.1</div><div>No symbol table info available.</div><div>#5  0x08091d21 in ngx_master_process_cycle (cycle=cycle@entry=0x8114628) at src/os/unix/ngx_process_cycle.c:163</div><div>        title = <optimized out></div><div>        p = <optimized out></div><div>        size = <optimized out></div><div>        i = <optimized out></div><div>        n = <optimized out></div><div>        sigio = 0</div><div>        set = {__sigbits = {0, 0, 0, 0}}</div><div>        itv = {it_interval = {tv_sec = 7, tv_usec = 9}, it_value = {tv_sec = 2, tv_usec = -16781864}}</div><div>        live = <optimized out></div><div>        delay = 0</div><div>        ls = <optimized out></div><div>        ccf = 0x81153b4</div><div>#6  0x08070f4f in main (argc=3, argv=0xfeffecac) at src/core/nginx.c:367</div><div>        b = <optimized out></div><div>        log = <optimized out></div><div>        i = <optimized out></div><div>        cycle = 0x8114628</div><div>        init_cycle = {conf_ctx = 0x0, pool = 0x8113e00, log = 0x80f50e0 <ngx_log>, new_log = {log_level = 0, file = 0x0, connection = 0, disk_full_time = 0, handler = 0x0, data = 0x0, writer = 0x0, wdata = 0x0, action = 0x0, next = 0x0}, log_use_stderr = 0, </div><div>          files = 0x0, free_connections = 0x0, free_connection_n = 0, modules = 0x0, modules_n = 0, modules_used = 0, reusable_connections_queue = {prev = 0x0, next = 0x0}, listening = {elts = 0x0, nelts = 0, size = 0, nalloc = 0, pool = 0x0}, paths = {elts = 0x0, </div><div>            nelts = 0, size = 0, nalloc = 0, pool = 0x0}, config_dump = {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, </div><div>            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, </div><div>            data = 0xfeffedb7 "l/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf", ' ' <repeats 146 times>...}, conf_param = {len = 0, data = 0x0}, conf_prefix = {len = 22, </div><div>            data = 0xfeffedb7 "l/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf", ' ' <repeats 146 times>...}, prefix = {len = 17, data = 0x8068c39 "tream"}, lock_file = {len = 0, data = 0x0}, hostname = {len = 0, data = 0x0}}</div><div>        cd = <optimized out></div><div>        ccf = 0x81153b4</div></div><div><br></div><div>что я делаю не правильно?</div></div><div dir="ltr">-- <br></div><div data-smartmail="gmail_signature"><div dir="ltr">WBR, Andriy Tovstik</div></div>