One of our servers is getting truly hammered today (5,000 simultaneous
clients is not unusual right now), so I've been tinkering with worker
instead of prefork. It's not doing nice things for me :(
The master (running-as-root) httpd is segfaulting after a few minutes, but
the children are staying around (for all the good that does ;) :
wait4(-1, 0xbffff620, WNOHANG|WUNTRACED, NULL) = 0
select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout)
wait4(-1, 0xbffff620, WNOHANG|WUNTRACED, NULL) = 0
select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout)
wait4(-1, 0xbffff620, WNOHANG|WUNTRACED, NULL) = 0
select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout)
fork() = 29289
wait4(-1, 0xbffff620, WNOHANG|WUNTRACED, NULL) = 0
select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout)
--- SIGSEGV (Segmentation fault) ---
gdb backtrace;
#0 0x080872ab in server_main_loop (remaining_children_to_start=Cannot
access memory at address 0x9
) at worker.c:1579
1579 ap_wait_or_timeout(&exitwhy, &status, &pid, pconf);
(gdb) bt full
#0 0x080872ab in server_main_loop (remaining_children_to_start=Cannot
access memory at address 0x9
) at worker.c:1579
child_slot = 135027216
exitwhy = Cannot access memory at address 0xffffffe9
(gdb)
can't trace back any further. Can't see anything immediately
obvious in the source, or the diffs from HEAD. Not running any crazy
patches, mine or otherwise ;)
Running on Linux, i386. I'm about to go delving into this (starting
with trying HEAD from 2.0), but in the meantime is there something
I'm missing ? Are there any outstanding known issues ?
--
Colm MacC�rthaigh Public Key: [EMAIL PROTECTED]
[EMAIL PROTECTED] http://www.stdlib.net/