[Mailman-Developers] empty digests

Barry A. Warsaw barry@digicool.com
Tue, 1 May 2001 05:13:05 -0400

>>>>> "RK" == Ricardo Kustner <ricardo@rixhq.nu> writes:

    RK> This took a really long time (1635 regular subscribers) and
    RK> after about 20 minutes I decided to press Ctrl-C cause I was
    RK> afraid it hung somewhow...  this means I wasn't able to do a
    RK> m.Save() but after checking the number of subscriber was
    RK> reduced to about 60 so appearantly it did work out...

The reason why it took so long, /and/ the reason why most of your
subscribers actually got digestered is the same: SetUserDigest() does
a self.Save() after each call.  As Thomas says, the worst that you
could have done would be to mess up one subscriber (the one you ^C'd),
but even there, you likely would have only reverted the change in that
subscriber's option.  I don't see how that could cause empty digests

Now, one question is whether SetUserDigest() should do a Save() after
each call.  I think in all normal usage, SetUserDigest() will be
wrapped in a try/finally to ensure that the list is saved.  OTOH,
there probably isn't any CGI way to set more than about 30 subscribers
options, and even then, I'll bet the typical case sets only one or a
small few, so the extra writes don't hurt too badly.

That's not the case in withlist.  First, you're using it to mass
configure lots of users so the extra writes are killing you.  But then
again, it made most of your changes go through.  I'm inclined to ditch
the Save() at the end of SetUserDigest() at the expense of losing your
changes if you quit withlist with unsaved changes.

>>>>> "RK" == Ricardo Kustner <ricardo@rixhq.nu> writes:

    RK> uh oh please don't tell me that when mailman sends out
    RK> digests, they travel through the /etc/aliases addresses cause
    RK> that would mean a neat little perl script I use filters out
    RK> the MIME digests... :( [I really need this script to keep the
    RK> digests clean from garbage)...

This would be my first suspicion (and not just 'cause it's perl
<wink>)!  The empty digests, are they MIME digests?  If plain text,
maybe they're still tripping up your script.  Thomas outlines a good
plan of first attack!