[Mailman-Users] Cron job to reset member bounce value

Mark Sapiro mark at msapiro.net
Tue Dec 17 18:49:14 EST 2019


On 12/17/19 1:28 PM, Ethan Rudnitsky wrote:
> Carl, my apologies as I see what you are saying now. The server is indeed
> retrying instead of giving up right away, so they do receive the messages
> eventually but the retries are being counted as a bounce.


If the message delayed DSNs or whatever they are are being scored as
bounces by Mailman, this is a bug. Please send me one of the bounce
messages you receive that increments the score or disables the member.
You get these by setting bounce_notify_owner_on_disable and if your
Mailman is new enough (>=2.1.19) bounce_notify_owner_on_bounce_increment
on the Bounce Processing page in the web admin UI.

Send the full, raw message as attached to the notice or the full, raw
notice, and I will try to update the recognizer to recognize it as
non-fatal.


> Mark, when I run your get_bounce_info script I do get an output of the
> current score for each member in each list, but when I manually run
> "./withlist -a -r reset_bounce --" it returns "Importing reset_bounce..."
> [newline] "Running reset_bounce.reset_bounce()... and it then lists all of
> the lists on each line as it goes through them and appends each with an
> (unlocked) and then says Finalizing. However, if I run the get_bounce_info
> again, nothing is reset to 0 bounces, it lists the same thing as before. So
> I guess I need clarification, will this only reset bounce counts for
> members who are already/currently locked, or is it supposed to reset the
> count back to 0 even if they are unlocked and below the threshold?

You seem to have picked the wrong script, and I didn't notice in my
follow-up. The reset_bounce script will re-enable delivery for all
members with delivery already disabled by bounce. It will not reset
scores for members not yet disabled. This is probably not what you want.
The script you want is one that resets the current bounce info and score
for members with current bounce info but not yet disabled. That script
is <https://www.msapiro.net/scripts/clear_bounce_info.py> (mirrored at
<https://fog.ccsf.edu/~msapiro/scripts/clear_bounce_info.py>.

All of the

Importing reset_bounce...
Running reset_bounce.reset_bounce()...
 and it then lists all of the lists on each line as it goes through them
and appends each with an (unlocked) and then says
Finalizing

output comes from withlist as it imports the script and runs it against
the lists.

The scripts themselves produce no output unless you specify the -v
option (after the --) in which case they just print a count of the
number of users affected.

The -v output for clear_bounce info is

List <listname>: Cleared bounce info for <nn> members.

and for reset_bounce it is

List <listname>: Reset <nn> bouncing members.

-- 
Mark Sapiro <mark at msapiro.net>        The highway is for gamblers,
San Francisco Bay Area, California    better use your sense - B. Dylan


More information about the Mailman-Users mailing list