"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 though.
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!
-Barry