On Fri, Jul 13, 2007 at 07:44:08PM -0700, Paul B. Henson wrote:
> On Wed, 11 Jul 2007, Robert Felber wrote:
> 
> > This could happen if all policyd-weight processes are hogged up. Should
> > be logged with "MAX_PROX NN reached". How many policyd-weight childs do
> > you have at such moments?
> 
> There are no instances of that message in my logs. I currently have the
> maximum number of processes set to 100.
> 
> 
> > Alternatively, what is your kernel setting for somaxconn? If it is 128
> > then you should increase it to 1024 or some higher value (this is a
> > general recommendation for any server). This isn't being logged by
> > policyd-weight, as this cannot be detected by polw.
> 
> somaxconn is currently the default, which I believe is 128.

You should really increase this. I will update the setup howto as well.
This level has caused many problems in the past.


> I currently have the maximum number of postfix smtp processes set to 300,
> so the theory here is that all 100 policyd-weight processes are busy, 128
> postfix processes are attempting to connect and sitting in the listen
> queue, and then the 129th+ processes get connection timed out?

Yes because policyd-weight childrens all are in a "accept" state. If the kernel
doesnt provide a socket-descriptor due to somaxconn issues the policyd-weight
returns to accept() on its listen socket.

At some time postfix will timeout.


> But that
> doesn't make sense, because shouldn't policyd-weight log a notification
> when it tried to start the 101st process which would have exceeded the
> maximum?

Yes. How many policyd-weight instances are up at this time?

> The only way the queue backlog should exceed 128 is if that many
> connections are made without policyd-weight doing an accept?

Or not being able to do a sane accept().


-- 
    Robert Felber (PGP: 896CF30B)
    Munich, Germany

____________________________________________________________
Policyd-weight Mailinglist - http://www.policyd-weight.org/

Reply via email to