(?) Mailman VERY Slow With IPv6 (with Work-around)

Home » CentOS » (?) Mailman VERY Slow With IPv6 (with Work-around)
CentOS 3 Comments

I recently stood up an EL7 box with Mailman for a few lists I run for some friends. My old install, on an EL6 system, ran with no issues for several years but I was induced to upgrade by a “hardware casualty” on the old system. I was going to have to rebuild anyway, so why not take it as an opportunity to try EL7?

The build went fine and I was able to migrate the lists over with no issues, but once I got there just about everything to do with Mailman operations were painfully slow. For example, “list_lists” took 5
seconds of “real” time. I was used to it taking _much_ less as I only have about 6 lists. This affected both the command-line Mailman tools and the web interface. My first inclination was to blame Python, but other code executed just fine with it.

While testing I tried an strace of list_lists and found that it was timing out on a read operation to a socket to the Avahi daemon
(/var/run/avahi-daemon/socket) while trying to resolve the link-local IPv6 address. Having flashbacks to Sendmail stalling on DNS issues I
decided to try fixing resolution first.

As a test I put the link-local address into my /etc/hosts file with a localized name. Running list_lists then took about 0.19 seconds “real”
time! The web interface also changed from painfully slow to it’s previous behaviour on EL6.

I imagine just turning off IPv6 would work as well, but I have an actual use case that is a lot easier with it turned on. I don’t know if anybody else has seen this, but thought it might be handy for someone else.

3 thoughts on - (?) Mailman VERY Slow With IPv6 (with Work-around)

  • Thanks a lot for having shared this. I haven’t tried (yet) to test mailman on CentOS 7 and the only one we have is on CentOS 6, and
    (unfortunately) no ipv6 addr, but I do remember having had to do this for ipv4 addr too (in /etc/hosts) to bypass the high number of dns requests (in the past)

  • Is avahi even installed by default on CentOS 7? I don’t see it installed on my lab’s desktop systems, let alone servers.

  • Gordon Messmer wrote:

    It certainly was in 6, which really annoyed me. I make it a point to chkconfig it off, service stop it, and close the firewall hole for it.

    mark