I have a very strange performance problem which only affects one small
announce-only list with approximately 11000 recipients: The smtp
logfile shows that it takes Mailman about 8400 seconds to deliver the
mails, which just doesn't make sense.
Setup: Mailman is configured to deliver outgoing mails to a dedicated
Postfix smtpd(8) daemon listening on port 10031. That daemon is
configured with all the usual stuff, no DNS lookups, no recipient
verification, no pre-queue filters, dedicated DNS caches and so on (if
it really matters, I can post the complete configuration to this
list). VERP and personalization are turned off on the Mailman side.
Postfix version is 2.8-20100213, but I ran a quick test with 2.6.5
just to be safe, and it doesn't change anything. Mailman version is
2.1.11 from Debian/stable.
After I first noticed the problem, I checked the logs - nothing
suspicious there. So I decided to to take some TCP captures.
For all other lists on this server, the conversation between Postfix
and Mailman is very fast paced, but for that one list, it takes almost
one second for a recipient to be specified (which is then acknowledged
immediately by Postfix).
I really don't have any idea where I coul start debugging, or how.
Normally it is the MTAs performance that people need to worry about,
but that particular mailserver isn't busy at all, not even handling
550k messages per day. Posting to all other lists only takes a
fraction of time, even ones that are much larger. There are no old
queue files around, no exceptions being thrown, no process running at
100% CPU load during delivery, nothing shunted - it's just slow.
As a quick workaround, I've increased the overall parallelism, as Ian
Eiloart pointed out in , to ensure that the one slow list doesn't
block anything, so the issue isn't really "top priority" - I'd be very
grateful for any hints, though.