[Mailman-Developers] Why both a .msg and .db in qfiles?

Barry A. Warsaw barry@python.org
Thu, 25 Jul 2002 00:55:20 -0400


>>>>> "JRM" == Jason R Mastaler <jason@mastaler.com> writes:

    JRM> For every incoming message waiting to be posted, MM writes
    JRM> both a .msg file containing the message text, and a .db file
    JRM> containing meta-information about that message.

    JRM> I'm curious why MM doesn't just store the rfc822 headers and
    JRM> message body in the .db pickle/marshal as well?  Why maintain
    JRM> two files instead of just one?

    JRM> The reason I ask is because I'm contemplating a similar
    JRM> approach for TMDA.

Mostly historical.  When the current arrangement was designed
(pre-email package) we had the pickle and a plain text file, so it was
convenient to have two separate files.  We could probably combine then
now except that it's more disruptive than I want for MM2.1.  Plus you
have to decide whether the metadata will change more often than the
message pickle.  At one time this was definitely the case, so we could
write the (smaller) metadata file quicker and more often than dumping
the whole thing out for each change in state.

-Barry