>> I've seen this behavior on overloaded servers.  I created a wiki
>> page to describe the fix.  Please let me know if it works
>> http://wiki.apache.org/spamassassin/NoProcessOnOverload

There's a *slightly* more elegant fix when using qmail as the mta, maybe
with others as well:

==================================================
:0
* ! BYPASS ?? ^[yY][Ee][sS]$
* ! ^X-Spam-Checker-Version:
* < 1234567890
{
   MAILHOST=`/bin/hostname`
   :0fw :$HOME/spamc.lock.$MAILHOST
   | /usr/local/bin/spamc -x -d spamdhost.domain.tld -H -t 60
   :0e
   *
   `/usr/bin/kill -TERM $$`
   :0
   * ! THRESHOLD ?? ^[0-9]+$
   {
        THRESHOLD="7"
   }
   :0
   * ^X-Spam-MyScore: \/.+
   * $ ? /usr/bin/test "$THRESHOLD" -le "$MATCH"
   $FILTERED
}
==================================================

The "e" in the recipe following the spamc exec catches any non-zero
exit/error codes from the last exec and kills the current procmail with a
TERM signal which causes qmail to put the email back at the bottom of the
local queue again...

--
Tim Wesemann
Voicenet Systems Administration


Reply via email to