Comment 7 for bug 265353

Revision history for this message
Deejster (deejster) wrote :

More followup on the filebase vs. filename in approved messages.

This seems to be very reproduceable as follows:

1) A message comes in to the system for <list> as
filebase.msg/filebase.db from a non-auto-approved poster.

2) filebase.msg gets moved to data/heldmsg-<list>-##.txt, and
filebase.db gets absorbed into lists/<list>/request.db

3) when approved via the admindb CGI interface, filebase.db gets extracted
from request.db and enqueued as NEWfilebase.db (without updating the
contents), and data/heldmsg-<list>-##.txt gets enqueued as
NEWfilebase.msg

My current best guess it when qrunner processes NEWfilebase*, and
encounters an smtp-failure, they are re-queued as filebase.msg/.db and the
NEWfilebase.msg/.db are overlooked in the dequeueing.

There's likely to be two solutions that'd work. Either qrunner could
check filebase vs. root_filename for consistency and keep track of things
when there are inconsistencies, or the admindb.cgi program should use the
filebase value from lists/<list>/request.db when enqueueing the files
(or updated the NEWfilebase.db file to have filebase=NEWfilebase). (or
maybe both should be done for thoroughness?)