Eduardo M . Stelmaszczyk:
> Hello,
> 
> I'm having problems with mail accumulating in the incoming queue under
> heavy load (2500+ SMTPd processes). The queue manager stops for a long
> time once in a while after trying to communicate with the "trace" client,
> as shown in a trace from cleanup below:
> 
> --
> open("public/qmgr", O_WRONLY|O_NONBLOCK) = 14
> fstat64(14, {st_mode=S_IFIFO|0622, st_size=0, ...}) = 0
> lstat64("public/qmgr", {st_mode=S_IFIFO|0622, st_size=0, ...}) = 0
> fcntl64(14, F_GETFL)                    = 0x801 (flags O_WRONLY|O_NONBLOCK)
> fcntl64(14, F_SETFL, O_WRONLY|O_NONBLOCK) = 0
> poll([{fd=14, events=POLLOUT}], 1, 10000) = 0
> close(14)                               = 0

The queue manager has a synchronous trace_flush() client, which is
used for DSN NOTIFY=SUCCESS notification, and for sender/recipient
address verification.  This trace_flush() client is subject to delays
in the cleanup server:

- trigger_timeout (default 10s) when the qmgr FIFO is full. The
minumum value is 1.

- in_flow_delay (default 1s) when new mail gets ahead of deliveries.
To disable, use "in_flow_delay = 0".

I am not aware of other delays.

If your Postfix is doing address verification on a large scale,
that may not be a good idea.

If your Postfix is sending lots of DSN NOTIFY=SUCCESS messages for
SMTP mail, turn off DSN on the SMTP daemon. One example from
http://www.postfix.org/DSN_README.html shows this:

    /etc/postfix/main.cf:
        smtpd_discard_ehlo_keyword_address_maps =
            cidr:/etc/postfix/esmtp_access

    /etc/postfix/esmtp_access:
        # Allow DSN requests from local subnet only
        192.168.0.0/28      silent-discard
        0.0.0.0/0           silent-discard, dsn
        ::/0                silent-discard, dsn

Another option is 

    /etc/postfix/main.cf:
        smtpd_discard_ehlo_keywords = silent-discard, dsn

meaning don't send DSN NOTIFY for anyone.

DSN was added long after the synchronous tls_flush() client
which was not designed for high volume.

        Wietse

Reply via email to