diff options
author | bwarsaw <> | 2004-02-22 22:37:45 +0000 |
---|---|---|
committer | bwarsaw <> | 2004-02-22 22:37:45 +0000 |
commit | 3e1b752e414942c07eb5ffbee72a60ee4a54b854 (patch) | |
tree | b24d9502063c69394ab89e94ec9a363d328ba78f /tests/test_membership.py | |
parent | 128af0573c554be30be6397a11d66e69e888c565 (diff) | |
download | mailman2-3e1b752e414942c07eb5ffbee72a60ee4a54b854.tar.gz mailman2-3e1b752e414942c07eb5ffbee72a60ee4a54b854.tar.xz mailman2-3e1b752e414942c07eb5ffbee72a60ee4a54b854.zip |
Much refactoring to improve bounce processing. The basic change moves the
queuing of bounce events out of the process's memory and into a 'bounce event'
file, essentially consisting of a stream of pickles. Every once in a while
the qrunner wakes up and processes the event file, which is named to be
specific to each qrunner instance. The actually processing is factored out
into a mixin class which is now subclassed by both the BounceRunner and
OutgoingRunner classes (since the latter has to handle SMTP rejects as
bounces).
Specific changes here include:
OutgoingRunner: Use BounceMixin as a base class. We can now get rid of the
whole _permfailures and _permfail_counter stuff since we'll just use the mixin
class as the basic logic for bounce handling.
_dispose(): Simplified since we can just use _queue_bounces() when a message
is rejected at SMTP time, although if that triggers a probe, the attached
message will be the one for which delivery was attempted since there really
isn't any bounce. Also, make this method handle probe bounces.
Diffstat (limited to 'tests/test_membership.py')
0 files changed, 0 insertions, 0 deletions