You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@spamassassin.apache.org by Jake Colman <co...@ppllc.com> on 2005/06/02 17:12:18 UTC

procmailrc being bypassed - again

I posted this problem last week and was told that it might be due to an SA
problem when overwhelmed by too many connections.  This problem only occurs
when my server has been off-line and then gets swamped from the backup MX
once it comes back on-line.

I use the default number of spamd children and have configured sendmail for
25 daemon children.  SA works perfectly and is filtering wonderfully except
for this one situation when I come back on-line and get swampled.  The
initial batch of emails that I receive are clearly missing my SA headers.
This seems to imply that SA ignored it.  

What do I do about this?!

TIA!

...Jake

-- 
Jake Colman
Sr. Applications Developer
Principia Partners LLC
Harborside Financial Center
1001 Plaza Two
Jersey City, NJ 07311
(201) 209-2467
www.principiapartners.com


Re: procmailrc being bypassed - again

Posted by Andy Jezierski <aj...@stepan.com>.
Jake Colman <co...@ppllc.com> wrote on 06/03/2005 02:47:15 PM:

>    DBF> If the loadave does -not- go up (due to waiting for things like 
DNS
>    DBF> queries) then you'll have to manually trigger the queuing 
behavior.
>    DBF> Edit your sendmail.cf (or .mc) file to add the 'Expensive' flag 
("e")
>    DBF> to your local mailer and run sendmail with the 
'HoldExpensive=true'
>    DBF> option set. (can do this from the command line, start sendmail 
with
>    DBF> the '-OHoldExpensive=true' argument added.
> 
> Where, exactly, does the 'Expensive' flag get added in the sendmail.mc 
file?
> 

   define(`confCON_EXPENSIVE',`true')dnl 
   define(`SMTP_MAILER_FLAGS',`e')dnl 

Andy

Re: procmailrc being bypassed - again

Posted by Jake Colman <co...@ppllc.com>.
>>>>> "DBF" == David B Funk <David> writes:

   DBF> On Thu, 2 Jun 2005, Jake Colman wrote:

   >> 
   >> I posted this problem last week and was told that it might be due to an
   >> SA problem when overwhelmed by too many connections.  This problem only
   >> occurs when my server has been off-line and then gets swamped from the
   >> backup MX once it comes back on-line.
   >> 
   >> I use the default number of spamd children and have configured sendmail
   >> for 25 daemon children.  SA works perfectly and is filtering
   >> wonderfully except for this one situation when I come back on-line and
   >> get swampled.  The initial batch of emails that I receive are clearly
   >> missing my SA headers.  This seems to imply that SA ignored it.
   >> 
   >> What do I do about this?!

   DBF> From your comments, I'm going to infer that you're using
   DBF> sendmail+procmail+spamc+spamd rather than sendmail+milter+spamd
   DBF> This means that you're running SA at delivery time rather than incoming
   DBF> connection time.

Correct.  I use procmail and spams/spamd.  Is it better to use a milter or is
just an alternate way of doing things?

   DBF> The easy way to prevent SA overload in that scenario is to
   DBF> single-thread the delivery process at those times. Just tell your
   DBF> sendmail to queue messages and deliver at the queue run rather than
   DBF> deliver immediately.  At queue-run time, the messages are removed
   DBF> from the queue and processed one-at-a-time.

I assume that when doing delivery at the queue it still passes the email
through procmail and spamc/spamd, correct?

   DBF> You may be able to automate this, try reducing your 'queue-loadave'
   DBF> value to something just above the usual loadave value for your
   DBF> machine.  (the confQUEUE_LA value in your .mc file or QueueLA in your
   DBF> .cf file).  Idea is that when your machine is handling that backup MX
   DBF> flood, its loadave goes up and triggers the queuing behavior.

   DBF> If the loadave does -not- go up (due to waiting for things like DNS
   DBF> queries) then you'll have to manually trigger the queuing behavior.
   DBF> Edit your sendmail.cf (or .mc) file to add the 'Expensive' flag ("e")
   DBF> to your local mailer and run sendmail with the 'HoldExpensive=true'
   DBF> option set. (can do this from the command line, start sendmail with
   DBF> the '-OHoldExpensive=true' argument added.

Where, exactly, does the 'Expensive' flag get added in the sendmail.mc file?

-- 
Jake Colman
Sr. Applications Developer
Principia Partners LLC
Harborside Financial Center
1001 Plaza Two
Jersey City, NJ 07311
(201) 209-2467
www.principiapartners.com


Re: procmailrc being bypassed - again

Posted by David B Funk <db...@engineering.uiowa.edu>.
On Thu, 2 Jun 2005, Jake Colman wrote:

>
> I posted this problem last week and was told that it might be due to an SA
> problem when overwhelmed by too many connections.  This problem only occurs
> when my server has been off-line and then gets swamped from the backup MX
> once it comes back on-line.
>
> I use the default number of spamd children and have configured sendmail for
> 25 daemon children.  SA works perfectly and is filtering wonderfully except
> for this one situation when I come back on-line and get swampled.  The
> initial batch of emails that I receive are clearly missing my SA headers.
> This seems to imply that SA ignored it.
>
> What do I do about this?!

>From your comments, I'm going to infer that you're using
sendmail+procmail+spamc+spamd rather than sendmail+milter+spamd
This means that you're running SA at delivery time rather than incoming
connection time.

The easy way to prevent SA overload in that scenario is to single-thread
the delivery process at those times. Just tell your sendmail to queue
messages and deliver at the queue run rather than deliver immediately.
At queue-run time, the messages are removed from the queue and processed
one-at-a-time.

You may be able to automate this, try reducing your 'queue-loadave' value
to something just above the usual loadave value for your machine.
(the confQUEUE_LA value in your .mc file or QueueLA in your .cf file).
Idea is that when your machine is handling that backup MX flood, its
loadave goes up and triggers the queuing behavior.

If the loadave does -not- go up (due to waiting for things like DNS
queries) then you'll have to manually trigger the queuing behavior.
Edit your sendmail.cf (or .mc) file to add the 'Expensive' flag ("e")
to your local mailer and run sendmail with the 'HoldExpensive=true'
option set. (can do this from the command line, start sendmail with
the '-OHoldExpensive=true' argument added.

-- 
Dave Funk                                  University of Iowa
<dbfunk (at) engineering.uiowa.edu>        College of Engineering
319/335-5751   FAX: 319/384-0549           1256 Seamans Center
Sys_admin/Postmaster/cell_admin            Iowa City, IA 52242-1527
#include <std_disclaimer.h>
Better is not better, 'standard' is better. B{

Re: procmailrc being bypassed - again

Posted by Duncan Hill <sa...@nacnud.force9.co.uk>.
On Thursday 02 June 2005 16:12, Jake Colman typed:

> I use the default number of spamd children and have configured sendmail for
> 25 daemon children.  SA works perfectly and is filtering wonderfully except
> for this one situation when I come back on-line and get swampled.  The
> initial batch of emails that I receive are clearly missing my SA headers.
> This seems to imply that SA ignored it.

Enable debugging in procmailrc and replicate the situation.  Read the logs, 
see what procmail thinks is happening.