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.