[Mailman-Users] bounce runner day of year out of range error

Mark Sapiro msapiro at value.net
Sat Mar 19 00:43:18 CET 2005


Heather Madrone wrote:
>
>I'm running Mailman 2.1.5 on Mac OSX 10.2.8 using Python 2.4 and exim
>4.42.  I have the bounce threshold set to 3.0, but Mailman only rarely manages
>to disable accounts that have been bouncing solidly for weeks.
>
<snip>
>
>I've been watching the exim traffic.  About 20 addresses have been failing
>solidly for the past 3 weeks, but Mailman has only disabled 8 of them.  Every
>few days, I get the following message:
>
>	Traceback (most recent call last):
>	  File "/Applications/mailman/bin/qrunner", line 270, in ?
>	    main()
> 	 File "/Applications/mailman/bin/qrunner", line 230, in main
> 	   qrunner.run()
>	  File "/Applications/mailman/Mailman/Queue/Runner.py", line 87, in run
> 	   self._cleanup()
> 	 File "/Applications/mailman/Mailman/Queue/BounceRunner.py", line 220, in _cleanup
>	    BounceMixin._cleanup(self)
>	  File "/Applications/mailman/Mailman/Queue/BounceRunner.py", line 132, in _cleanup
> 	   self._register_bounces()
>	  File "/Applications/mailman/Mailman/Queue/BounceRunner.py", line 120, in _register_bounces
>	    mlist.registerBounce(addr, msg, day=day)
>	  File "/Applications/mailman/Mailman/Bouncer.py", line 131, in registerBounce
>	    time.strftime('%d-%b-%Y', day + (0,)*6))
>	ValueError: day of year out of range

I don't know what causes this error beyond the immediately obvious
ValueError, but I have an idea about bouncing users not being disabled.

Bounce processing was changed in 2.1.5. From the NEWS file -

    - The bounce processor has been redesigned so that now when an
      address's bounce score reaches the threshold, that address will be
      sent a probe message.  Only if the probe bounces will the address
      be disabled.  The score is reset to zero when the probe is sent.
      Also, bounce events are now kept in an event file instead of in
      memory.  This should help contain the bloat of the BounceRunner.

      New supporting variables in Defaults.py: VERP_PROBE_FORMAT,
      VERP_PROBE_REGEXP

Check the 'bounce' log. The sending of a probe is logged. The question
is are probes being sent for all 20 or so addresses? If so, the
underlying problem may be that the VERP like probe address is not
being properly preserved and returned to the bounce processor when the
probe bounces.

If it turns out that this is the problem, I'm not sure what you can do
in 2.1.5, but 2.1.6 (in late beta) makes bounce probes optional and
off by default.

--
Mark Sapiro <msapiro at value.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