qrunner chokes on huge qfiles directorys
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.
break
- msgcount = msgcount + 1
# Keep the qrunner lock alive for a while longer
root, ext = os.path.
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
+ msgcount = msgcount + 1
msgfp = dbfp = None
try:
dbfp = open(root + '.db')
[http://
A slightly different patch will be included in Mailman 2.0.1 which will fix
this problem.