Re: modperl Apache keeps freezing up

2006-05-05 Thread Philip M. Gollucci

If I kill and restart the Apache then it's fine but it'll freeze up in
a few days again. I'm perplexed.

Start the server in -X or wait for it to happen and
attach strace to the process.  If that doesn't help you could always 
attach gdb to the process.


HTH


--

Philip M. Gollucci ([EMAIL PROTECTED]) 323.219.4708
Consultant / http://p6m7g8.net/Resume/resume.shtml
Senior Software Engineer - TicketMaster - http://ticketmaster.com
1024D/A79997FA F357 0FDD 2301 6296 690F  6A47 D55A 7172 A799 97F

It takes a minute to have a crush on someone, an hour to like someone,
and a day to love someone, but it takes a lifetime to forget someone...


Re: modperl Apache keeps freezing up

2006-05-05 Thread Philip Mak
On Fri, May 05, 2006 at 12:06:24AM -0700, Philip M. Gollucci wrote:
 If I kill and restart the Apache then it's fine but it'll freeze up in
 a few days again. I'm perplexed.
 Start the server in -X or wait for it to happen and
 attach strace to the process.  If that doesn't help you could always 
 attach gdb to the process.

It happened again. I tried attaching gdb/strace to the main Apache
process that froze and got some data, but I don't know how to
interpret the results. Does anyone know how to interpret this?

Here's what gdb says:

(gdb) where
#0  0x557c19f8 in select () from /lib/tls/libc.so.6
#1  0x080a85fc in wait_or_timeout ()
#2  0x080aac5e in standalone_main ()
#3  0x080ab3d4 in main ()

And here's what strace says:

select(0, NULL, NULL, NULL, {0, 135000}) = 0 (Timeout)
time(NULL)  = 1146842062
waitpid(-1, 0xda1c, WNOHANG)= 0
select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout)
time(NULL)  = 1146842063
waitpid(-1, 0xda1c, WNOHANG)= 0
select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout)
time(NULL)  = 1146842064
waitpid(-1, 0xda1c, WNOHANG)= 0
select(0, NULL, NULL, NULL, {1, 0}) = 0 (Timeout)
time(NULL)  = 1146842065
(keeps repeating same sequence of calls)

Also here's a gdb of one of the child processes:

(gdb) where
#0  0x556ea67e in __read_nocancel () from /lib/tls/libpthread.so.0
#1  0x556afa4d in PerlIOUnix_read () from /usr/lib/libperl.so.5.8
#2  0x556ae1d2 in Perl_PerlIO_read () from /usr/lib/libperl.so.5.8
#3  0x556b0f6d in PerlIOBuf_fill () from /usr/lib/libperl.so.5.8
#4  0x556ae583 in Perl_PerlIO_fill () from /usr/lib/libperl.so.5.8
#5  0x556af07b in PerlIOBase_read () from /usr/lib/libperl.so.5.8
#6  0x556b0fe9 in PerlIOBuf_read () from /usr/lib/libperl.so.5.8
#7  0x556ae1d2 in Perl_PerlIO_read () from /usr/lib/libperl.so.5.8
#8  0x556b2b93 in PerlIO_getc () from /usr/lib/libperl.so.5.8
#9  0x55657f75 in Perl_sv_gets () from /usr/lib/libperl.so.5.8
#10 0x55648f32 in Perl_do_readline () from /usr/lib/libperl.so.5.8
#11 0x55645920 in Perl_pp_readline () from /usr/lib/libperl.so.5.8
#12 0x55644ce9 in Perl_runops_standard () from /usr/lib/libperl.so.5.8
#13 0x555e7459 in Perl_call_sv () from /usr/lib/libperl.so.5.8
#14 0x555e723d in Perl_call_sv () from /usr/lib/libperl.so.5.8
#15 0x0805b8be in perl_call_handler ()
#16 0x0805ac03 in perl_run_stacked_handlers ()
#17 0x080589e4 in perl_handler ()
#18 0x0809d0b2 in ap_invoke_handler ()
#19 0x080b3aba in process_request_internal ()
#20 0x080b3b17 in ap_process_request ()
#21 0x080aa0d7 in child_main ()
#22 0x080aa368 in make_child ()
---Type return to continue, or q return to quit---
#23 0x080aa6d6 in perform_idle_server_maintenance ()
#24 0x080aad77 in standalone_main ()
#25 0x080ab3d4 in main ()


modperl Apache keeps freezing up

2006-05-04 Thread Philip Mak
My modperl Apache keeps freezing up every few days.

When it freezes up, here's what ps looks like:

$ ps ux --width=
USER   PID %CPU %MEM   VSZ  RSS TTY  STAT START   TIME COMMAND
shoujoai 29179  0.0  0.2  8036 5928 ?Ss   May03   0:00 
/usr/local/perlhttpd/bin/httpd -f /home/shoujoai/httpd/httpd.conf
shoujoai 30337  0.0  0.9 21344 18728 ?   SMay03   0:02 
/usr/local/perlhttpd/bin/httpd -f /home/shoujoai/httpd/httpd.conf
shoujoai 14289  0.0  1.0 23708 21156 ?   SMay03   0:36 
/usr/local/perlhttpd/bin/httpd -f /home/shoujoai/httpd/httpd.conf
shoujoai 14366  0.0  0.9 22168 19584 ?   SMay03   0:25 
/usr/local/perlhttpd/bin/httpd -f /home/shoujoai/httpd/httpd.conf
shoujoai 17662  0.0  0.9 21656 19132 ?   SMay03   0:19 
/usr/local/perlhttpd/bin/httpd -f /home/shoujoai/httpd/httpd.conf
shoujoai 26427  0.0  0.9 21364 18836 ?   SMay03   0:06 
/usr/local/perlhttpd/bin/httpd -f /home/shoujoai/httpd/httpd.conf

When I try to telnet to it, it goes like this:

$ telnet localhost 8002
Trying 127.0.0.1...

then it hangs for a few minutes before this:

Connected to localhost.localdomain.
Escape character is '^]'.

Then if I try to do an HTTP request:

GET /server-status HTTP/1.1
Host: www.shoujoai.com

it'll hang for another few minutes and then it just does:

Connection closed by foreign host.

Any ideas what's going on? The access_log showed normal traffic
patterns up until the time it froze then it just stops:

206.57.89.207 - - [03/May/2006:23:44:04 -0500] GET /forum/board_show.pl?bid=12 
HTTP/1.0 200 15098 http://www.shoujoai.com/forum/forum_show.pl; Mozilla/5.0 
(Windows; U; Windows NT 5.1; en-US; rv:1.7.10) Gecko/20050716 Firefox/1.0.6 
(ax)
68.107.121.19 - - [03/May/2006:23:44:04 -0500] GET 
/forum/board_show.pl?bid=7;pg=2 HTTP/1.0 200 15752 
http://www.shoujoai.com/forum/board_show.pl?bid=7; Mozilla/5.0 (Windows; U; 
Windows NT 5.1; en-US; rv:1.7.12) Gecko/20050915 Firefox/1.0.7
70.244.35.23 - - [03/May/2006:23:44:05 -0500] GET /forum/forum_search.pl 
HTTP/1.0 200 6525 http://www.shoujoai.com/forum/board_show.pl?bid=12; 
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; YPC 3.0.3; .NET CLR 
1.1.4322)

If I kill and restart the Apache then it's fine but it'll freeze up in
a few days again. I'm perplexed.