Symptoms

POA SpamAssassin Server writes to the /var/log/maillog file the following message:

Oct 17 00:58:21 sa01 spamd[20327]: prefork: server reached --max-children setting, consider raising it

Cause

The --max-children option specifies the maximum number of children to spawn. Spamd will spawn that number of children, then sleep in the background until a child dies, wherein it will go and spawn a new child.

In POA, a value of this options is set to 20, which is suitable for moderate SpamAssassin Server load. When the SpamAssassin Server load is high, you may receive the Oct 17 00:58:21 sa01 spamd[20327]: prefork: server reached --max-children setting, consider raising it message from SpamAssassin Server.

Resolution

Increase the current value of the --max-children option following these steps:

  1. Log on to the POA SpamAssassin Server as root.

  2. Open the /etc/init.d/spamassassin file for editing.

  3. In the

    SPAMDOPTIONS_COMMON="--username=spamassassin --daemonize --helper-home-dir=/var/spamassassin --max-children 20 --nouser-config --virtual-config-dir=/var/spamassassin/%u/.spamassassin --listen-ip=172.16.55.120 --allowed-ips=`cat /etc/mail/spamassassin/allowed_ips` -l" 
    

    string, set the required vaule.

  4. Save the file and restart SpamAssassin using the /etc/init.d/spamassassin restart command.

Perfrom a validation using the

# cat /var/log/maillog | grep 'server reached --max-children setting' 

command that problem is resolved. Otherwise, repeat steps 1-4 again.

Note: If you run too many servers for the amount of free RAM available, you run the danger of hurting performance by causing a high swap load as server processes are swapped in and out continually.

Internal content

Link on internal Article