I have a Rails 1.2.3 app (due for an update, I know) running on a
Mongrel 1.1.4 behind Apache 2.2.3 mod_proxy on Debian 4.0. It keeps
hanging up for no reason I can tell. I have tried everything that anyone
has ever hinted at being a solution for this problem:

- The application doesn't use MySQL, so setting the connection timeout
won't help.
- Using AR not PStore for sessions.
- Logger isn't rotating the logs itself.
- I added the no-keepalive and force 1.0 setenv commands to apache.

In the apache log, I get the typical "proxy: error reading status line
from remote server localhost". lsof shows lots of sockets in CLOSE_WAIT.
strace gives this sequence over and over:

time(NULL)                              = 1207001155
select(4, [3], [], [], {0, 0})          = 0 (Timeout)
sigprocmask(SIG_BLOCK, NULL, [])        = 0
time(NULL)                              = 1207001155
gettimeofday({1207001155, 980832}, NULL) = 0
gettimeofday({1207001155, 980855}, NULL) = 0
select(4, [3], [], [], {0, 999977})     = 0 (Timeout)
gettimeofday({1207001156, 980679}, NULL) = 0
select(4, [3], [], [], {0, 153})        = 0 (Timeout)

I tried letting them run after sending a USR1, but that doesn't seem to
generate any extra information.

At first, I thought it would only happen if the Mongrels were allowed to
sit idle - similar to the MySQL problem others reported - but then I saw
one go silent within a half hour of a restart.

Any suggestions?
-- 
Posted via http://www.ruby-forum.com/.
_______________________________________________
Mongrel-users mailing list
Mongrel-users@rubyforge.org
http://rubyforge.org/mailman/listinfo/mongrel-users

Reply via email to