I am seeing the following in the postfix logs, and we are having a delivery
problem to blarg.com. However the destination_concurrency_limit reported at
20 took my by surprise. I was under the impression we had already set it
higher.

Feb 11 12:36:08 email postfix/qmgr[23132]: warning: mail for blarg.com is
using up 4001 of 4812 active queue entries
Feb 11 12:36:08 email postfix/qmgr[23132]: warning: this may slow down
other mail deliveries
Feb 11 12:36:08 email postfix/qmgr[23132]: warning: you may need to
increase the main.cf  smtp104_120_110_27_destination_concurrency_limit from
20
Feb 11 12:36:08 email postfix/qmgr[23132]: warning: please avoid flushing
the whole queue when you have
Feb 11 12:36:08 email postfix/qmgr[23132]: warning: lots of deferred mail,
that is bad for performance
Feb 11 12:36:08 email postfix/qmgr[23132]: warning: to turn off these
warnings specify: qmgr_clog_warn_time = 0

We use sender dependent transport maps to allow our applications to send
out the correctly plumbed sending-ip.

from master.cf

smtp      inet  n       -       n       -       -       smtpd
smtp104_120_110_27 unix  - - n - 150 smtp -o
smtp_bind_address=104.120.110.27 -o syslog_name=postfix-app1 -o
smtp_helo_name=mail-27.redacted.com


root@email:/var/log# postconf -n | grep destination_concurrency_limit
smtp_destination_concurrency_limit = 75

root@email:/var/log# postconf -d | grep destination_concurrency_limit
default_destination_concurrency_limit = 20
lmtp_destination_concurrency_limit = $default_destination_concurrency_limit
local_destination_concurrency_limit = 2
relay_destination_concurrency_limit = $default_destination_concurrency_limit
smtp_destination_concurrency_limit = $default_destination_concurrency_limit
virtual_destination_concurrency_limit =
$default_destination_concurrency_limit

If I am understanding the implications correctly the currently set
'smtp_destination_concurrency_limit = 75' ONLY controls the limit for the
smtp line in master.cf; it's not an inherited default for any 'smtp'
service like we had assumed.

If my intention is to increase all of the smtpYYY_YYY_YYY_YYY interfaces
then I need to set 'default_destination_concurrency_limit = 20' higher.
(and 75 is probably way too high)

OR create entries for the specific transports in main.cf like

smtp104_120_110_27_destination_concurrency_limit = 30

I'm assuming that over time we set it higher, and not seeing a negative
effect kept increasing it, but there is almost no mail that goes out the
default smtp interface, so we've been effectively running at a
destination_concurrency_limit of 20 this entire time on all of our custom
interfaces.

I also understand raising the destination_concurrency_limit isn't going to
solve the deliverability problem; it will only correct our understanding
and intent regarding the configuration of our
default_destination_concurrency_limit for this and other interfaces.

Is my resulting understanding correct?

Reply via email to