>>>>> "S" == SRE <eckert@climber.org> writes:
S> Yep - at least write the address it was working on to the log files. A
S> message back to the list owner would be nice for ANY delivery error.
For everyone's info, the warning comes from Mj::Deliver::SMTP::getresp(),
but it just returns undef. This causes Mj::Deliver::Envelope::address to
return 0 which causes it to retry the batch using another of the list of
delivery hosts (since an SMTP failure like this points to the host being
hosed).
The case is ambiguous, because it could also just be a POS MTA like
sendmail screwing up in its inimitable way. I suppose that the best course
of action is:
if Mj::Deliver::Envelope::address fails (due to timeout, or perhaps some
other reason) then assume that the address we were trying to deal with was
bad, drop it (perhaps warning somehow [1]) and continue with the batch.
But what if we get failures in other parts of the SMTP transaction? When
does it indicate MTA stupidity and when does it indicate host failure?
1] Note that there really should be a generic mechanism for "warning the
owner" but I never succeeded in coming up with an easy way to do one. The
possibility that I most favored was putting warnings in a directory and
having the _next_ run send them out. It's quite possible that the current
run is just too hosed to send mail. Thankfully we are guaranteed an hourly
run (in a properly installed setup), so warnings won't sit around forever.
BTW, I haven't heard of mj2-dev@csf.colorado.edu before; can someone fill
me in?
- J<
Follow-Ups:
References:
|
|