qrunner chokes on huge qfiles directorys

Bug #265409 reported by Bug Importer
2
Affects Status Importance Assigned to Milestone
GNU Mailman
Fix Released
High
Barry Warsaw

Bug Description

A out of diskspace situation created a few hounderd *.db files with no
*.msg files. qrunner exits after processing N files. Since it skips *.db
files while processing it should skip them too while counting when to exit
to avoid deadlocks.

Erm. I guess my patch better ilustrates what I mean:

--- qrunner.orig Mon Jan 1 00:31:03 2001

+++ qrunner Mon Jan 1 00:37:44 2001

@@ -198,13 +198,15 @@

         if mm_cfg.QRUNNER_MAX_MESSAGES is not None and \

                msgcount > mm_cfg.QRUNNER_MAX_MESSAGES:

             break

- msgcount = msgcount + 1

         # Keep the qrunner lock alive for a while longer

         lock.refresh()

         root, ext = os.path.splitext(os.path.join(mm_cfg.QUEUE_DIR,
file))

         if ext <> '.msg':

             # trigger just off the .msg file

+ # this must be done before incerasing msgcount to avoid

+ # deadlocks if qfiles starts with hunderts of *.db files

             continue

+ msgcount = msgcount + 1

         msgfp = dbfp = None

         try:

             dbfp = open(root + '.db')

[http://sourceforge.net/tracker/index.php?func=detail&aid=227199&group_id=103&atid=100103]

Revision history for this message
Barry Warsaw (barry) wrote :

A slightly different patch will be included in Mailman 2.0.1 which will fix
this problem.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.