|
Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com |
From: Craig Sanders (cas
taz.net.au)Date: Tue Sep 04 2001 - 19:58:50 CDT
On Tue, Sep 04, 2001 at 04:54:05PM -0700, Claus Assmann wrote:
> On Wed, Sep 05, 2001, Craig Sanders wrote:
>
> > sendmail tries to deliver first, and only queues if the delivery fails.
> > last time i used sendmail, no amount of ruleset tweaking could change
> > this behaviour.
>
> Just to avoid some misinformation:
> O DeliveryMode=q
> is all that it takes to change the delivery mode of sendmail
> (from the default "background", i.e., fork). Yes, this is used
> by people to smooth out the load. The sendmail documentation
> explains the various modes.
yes, that is what the documentation says.
it doesn't work, though, for handling bounces...at least, not when
the remote MTA returns a "550 user not found" or similar 5xx reject
code. in that situation, sendmail immediately tries to deliver the
bounce. this is a huge problem when you have hundreds or thousands
of bounces happening at once, resulting in hundreds or thousands of
bounce-handling scripts being forked at once. compared to an LDA, the
bounce-handlers are relatively long-lived scripts, and the more of them
that are running, the longer each one of them takes to run. loadavg
skyrockets to the hundreds until the machine runs out of virtual memory
or file descriptors or other resources. then it dies.
the fact that a program has dumb behaviour is bad enough...but it's
worse when that dumb behaviour contradicts the documentation.
i watched this happen for weeks on that system, trying everything i
could think of/read about to stop it from doing that. nothing did.
the ultimate fix was to replace sendmail with postfix...which is an
excellent general fix for almost all sendmail problems, IMO.
smartlist doesn't have the best bounce-handling around - in fact, in
terms of load it is horrendous, with several procmail scripts being
forked to do the job...but the fact is that under postfix, it wasn't a
problem at all. under sendmail, it dies.
it's possible that this may have been fixed in a more recent sendmail.
i can't recall exactly what the last version i tried was, but it would
have been around 8.9.x. or maybe 8.10.x
craig
-- craig sanders <castaz.net.au>
Fabricati Diem, PVNC. -- motto of the Ankh-Morpork City Watch - To unsubscribe, send mail to majordomo
postfix.org with content (not subject): unsubscribe postfix-users
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]