Greetings.
I use nginx/0.7.64 with nginx-upload-progress-module/0.7 on Ubuntu 9.10.
Just run /etc/init.d/nginx reload
(or send -HUP signal) 2 times, and nginx master process will shut down, while children processes still work.
Core dump:
GNU gdb (GDB) 7.0-ubuntu
Copyright (C) 2009 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 "i486-linux-gnu".
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/...
Reading symbols from /usr/sbin/nginx...done.
Reading symbols from /lib/tls/i686/cmov/libcrypt.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/tls/i686/cmov/libcrypt.so.1
Reading symbols from /lib/libpcre.so.3...(no debugging symbols found)...done.
Loaded symbols for /lib/libpcre.so.3
Reading symbols from /lib/i686/cmov/libssl.so.0.9.8...(no debugging symbols found)...done.
Loaded symbols for /lib/i686/cmov/libssl.so.0.9.8
Reading symbols from /lib/i686/cmov/libcrypto.so.0.9.8...(no debugging symbols found)...done.
Loaded symbols for /lib/i686/cmov/libcrypto.so.0.9.8
Reading symbols from /lib/tls/i686/cmov/libdl.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/tls/i686/cmov/libdl.so.2
Reading symbols from /lib/libz.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/libz.so.1
Reading symbols from /lib/tls/i686/cmov/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/tls/i686/cmov/libc.so.6
Reading symbols from /lib/ld-linux.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/tls/i686/cmov/libnss_compat.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/tls/i686/cmov/libnss_compat.so.2
Reading symbols from /lib/tls/i686/cmov/libnsl.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/tls/i686/cmov/libnsl.so.1
Reading symbols from /lib/tls/i686/cmov/libnss_nis.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/tls/i686/cmov/libnss_nis.so.2
Reading symbols from /lib/tls/i686/cmov/libnss_files.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/tls/i686/cmov/libnss_files.so.2
Core was generated by `nginx:'.
Program terminated with signal 11, Segmentation fault.
#0 0x0804d9c2 in ngx_palloc_large (pool=0x9cb6d20, size=) at src/core/ngx_palloc.c:230
230 if (large->alloc == NULL) {
(gdb) bt full
#0 0x0804d9c2 in ngx_palloc_large (pool=0x9cb6d20, size=) at src/core/ngx_palloc.c:230
p = 0xb6c9b008
n = 1
large = 0x8
#1 0x0804daa5 in ngx_palloc (pool=0x8, size=1) at src/core/ngx_palloc.c:141
m = <value optimized out>
p = <value optimized out>
#2 0x0804dd2a in ngx_array_push_n (a=0x9cb6cf8, n=8) at src/core/ngx_array.c:131
elt = <value optimized out>
new = <value optimized out>
nalloc = 16
p = 0x6d002
#3 0x0807bcb7 in ngx_http_script_add_code (codes=0x9cb6cf8, size=8, code=0x0) at src/http/ngx_http_script.c:562
elts = <value optimized out>
new = <value optimized out>
#4 0x0807bd14 in ngx_http_script_add_copy_code (sc=0xbfdba0b4, value=0x1, last=446466) at src/http/ngx_http_script.c:589
len = <value optimized out>
zero = 134535430
code = <value optimized out>
#5 0x0807c1ce in ngx_http_script_compile (sc=0xbfdba0b4) at src/http/ngx_http_script.c:367
ch = <value optimized out>
name = {len = 38, data = 0x80aa7a4 "new Object({ 'state' : 'starting' })\r\n"}
i = 38
bracket = <value optimized out>
#6 0x0809f949 in ngx_http_upload_progress_set_template (cf=, t=, source=0x80b3960)
at /usr/src/nginx-modules/masterzen-nginx-upload-progress-module-ac62a29/ngx_http_uploadprogress_module.c:1486
sc = {cf = 0xbfdba44c, source = 0x80b3960, flushes = 0x0, lengths = 0x9cb6ce0, values = 0x9cb6cdc, variables = 0, ncaptures = 0,
captures_mask = 0, size = 38, main = 0x0, compile_args = 0, complete_lengths = 1, complete_values = 1, zero = 0,
conf_prefix = 0, root_prefix = 0, dup_capture = 0, args = 0}
#7 0x0809fbe5 in ngx_http_uploadprogress_init_variables_and_templates (cf=0xbfdba44c)
at /usr/src/nginx-modules/masterzen-nginx-upload-progress-module-ac62a29/ngx_http_uploadprogress_module.c:1308
var = <value optimized out>
v = <value optimized out>
m = 0x80b3880
#8 0x0806a642 in ngx_http_block (cf=0xbfdba44c, cmd=0x80ad3a0, conf=0x9d62c1c) at src/http/ngx_http.c:231
rv = <value optimized out>
mi = 36
m = 40
s = <value optimized out>
ports = {elts = 0x9d62c00, nelts = 1163022147, size = 16777216, nalloc = 0, pool = 0x9d62e08}
module = <value optimized out>
ctx = 0x9d62e50
clcf = <value optimized out>
cmcf = 0x9d62ed4
#9 0x0805a2b7 in ngx_conf_handler (cf=0xbfdba44c, filename=0x9d627b0) at src/core/ngx_conf_file.c:393
rv = <value optimized out>
conf = <value optimized out>
i = 7
multi = 0
confp = 0x1
name = 0x9d62d4c
cmd = 0x80ad3a0
#10 ngx_conf_parse (cf=0xbfdba44c, filename=0x9d627b0) at src/core/ngx_conf_file.c:243
rv = <value optimized out>
fd = 6
rc = 1
buf = {
pos = 0x9d2d489 "\n include /etc/nginx/mime.types;\n\n access_log\t/var/log/nginx/access.log;\n\n sendfile on;\n #tcp_nopush on;\n\n #keepalive_timeout 0;\n keepalive_timeout 65;\n tcp_nod"...,
last = 0x9d2d7d3 "q\206\234\263\313\344\376\031\065\021", file_pos = 579621298477465604, file_last = 708803710033386319,
start = 0x9d2d3d8 "user www-data;\nworker_processes 1;\n\nerror_log /var/log/nginx/error.log;\npid /var/run/nginx.pid;\n\nevents {\n worker_connections 1024;\n # multi_accept on;\n}\n\nhttp {\n include /etc"..., end = 0x9d2e3d8 "\016(C_a\a",
tag = 0x4000, file = 0x9cd23a4, shadow = 0x9cd23a4, temporary = 1, memory = 0, mmap = 0, recycled = 1, in_file = 1, flush = 1,
sync = 0, last_buf = 1, last_in_chain = 1, last_shadow = 1, temp_file = 0, num = 134536150}
prev = 0x0
conf_file = {file = {fd = 6, name = {len = 21, data = 0x9d627fc "/etc/nginx/nginx.conf"}, info = {st_dev = 2049, __pad1 = 0,
__st_ino = 834362, st_mode = 33188, st_nlink = 1, st_uid = 0, st_gid = 0, st_rdev = 0, __pad2 = 0, st_size = 1019,
st_blksize = 4096, st_blocks = 8, st_atim = {tv_sec = 1257134873, tv_nsec = 0}, st_mtim = {tv_sec = 1256334203,
tv_nsec = 0}, st_ctim = {tv_sec = 1257135791, tv_nsec = 0}, st_ino = 834362}, offset = 1019,
sys_offset = -4621920719170886748, log = 0x9cd23a4, valid_info = 0, directio = 0}, buffer = 0xbfdba36c, line = 12}
type = parse_file
#11 0x08057ab9 in ngx_init_cycle (old_cycle=0x9cd2398) at src/core/ngx_cycle.c:263
rv = <value optimized out>
senv = 0xbfdba87c
env = <value optimized out>
i = 45
n = 45
log = 0x9cd23a4
conf = {name = 0x0, args = 0x9d62d38, cycle = 0x9d62708, pool = 0x9d626e0, temp_pool = 0x9db6768, conf_file = 0xbfdba2e0,
log = 0x9cd23a4, ctx = 0x9d62e50, module_type = 1163022147, cmd_type = 16777216, handler = 0, handler_conf = 0x0}
pool = 0x9d626e0
cycle = 0x9d62708
old = <value optimized out>
shm_zone = 0x80000000
oshm_zone = 0x80000000
part = <value optimized out>
opart = 0x0
file = 0x0
nls = 0x80000000
ccf = <value optimized out>
old_ccf = <value optimized out>
hostname = "denis", '\000' <repeats 87 times>"\226, \223\071\000\276U\005\bx\245ۿ", '\000' <repeats 148 times>, "|\346%"
#12 0x080651a6 in ngx_master_process_cycle (cycle=0x9cd2398) at src/os/unix/ngx_process_cycle.c:230
title = 0x80b5700 ""
p = <value optimized out>
size = 2
i = 2
n = 1
set = {__val = {0 <repeats 32 times>}}
itv = {it_interval = {tv_sec = 28, tv_usec = 6809200}, it_value = {tv_sec = 3989036, tv_usec = 340088576}}
live = 1
delay = 0
ccf = 0x9cd294c
#13 0x0804cf8a in main (argc=1, argv=0xbfdba874) at src/core/nginx.c:389
i = <value optimized out>
log = 0x80b3b74
cycle = 0x9cab508
init_cycle = {conf_ctx = 0x0, pool = 0x9caace0, log = 0x80b3b74, new_log = {log_level = 0, file = 0x0, connection = 0,
handler = 0, data = 0x0, action = 0x0}, files = 0x0, free_connections = 0x0, free_connection_n = 0, listening = {elts = 0x0,
nelts = 0, size = 0, nalloc = 0, pool = 0x0}, pathes = {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 = 21,
data = 0x80a039a "/etc/nginx/nginx.conf"}, conf_param = {len = 0, data = 0x0}, conf_prefix = {len = 11,
data = 0x80a039a "/etc/nginx/nginx.conf"}, prefix = {len = 17, data = 0x80a0388 "/usr/local/nginx/"}, lock_file = {len = 0,
data = 0x0}, hostname = {len = 0, data = 0x0}}
ccf = <value optimized out>
(gdb) quit