From: Jeremy Howard (no email)
Date: Wed May 01 2002 - 23:40:07 EDT
Jeremy Howard wrote:
> I've seen a couple of problems over the last few weeks with master
> apparently failing to correctly maintain the prefork pool. We
> particularly see this problem with pop3d, which has more
> connects/disconnects than IMAP because of the nature of the protocol.
<...>
> The third issue is that when a process fails to shutdown correctly,
> such as if it segfaults, master does not seem to correctly keep track
> of the child process count. As a result, eventually the pool runs out
> and no more connections are accepted.
I've found a way to fix this. In master.c reap_child, add:
c->s->ready_workers--;
and
t->s->ready_workers--;
...immediately after the corresponding nactive--. This resolves the
problem for me in the limited testing I've done to date.
|
|
|