I’ve an issue with Nginx 0.6.30. So far it seems that the following
things are needed to reproduce this bug:
- keepalives enabled,
- Nginx running on Linux x86_64,
- many concurrent connections (> 300).
Nginx crashes on a SIGSEGV, but it looks like a stack overflow caused by
recursive calls according to gdb.
Here is the setup:
Ubuntu 8.04 64 bits, kernel 2.6.24
Amd 64 3000+ (single core), 512 MB
Nginx 0.6.30 configuration:
1 worker, no master process, no daemon, epoll, sendfile, worker
connections: 8000, 1 server serving a 10 kB index.html static file.
Then using Apache Bench like this:
ab -k -c 500 -n 1000000 http://localhost:8000/index.html
will cause a stack overflow (after ~24000 requests).
Using ab without the keepalive option (-k) works on the same computer
without problem so far even with a large number of simultaneous
ab -c 4000 -n 1000000 http://localhost:8000/index.html
Never could reproduce it on my main computer (Ubuntu 8.04 i386 32 bits).
I will try to do another tests on a q6600 (quad core) running Ubuntu
8.04 x86_64 and keep you informed.
A gdb session showing the first 500 stack backtraces is attached, hope
it will help.