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{