On Sun, 2015-07-05 at 13:38 -0700, Gordon Messmer wrote:
On 07/05/2015 01:23 PM, Joe Zeff wrote:
> Not so. The message is still there, but it's marked in the index
> as
> deleted. The file isn't re-written until it's compacted.
I know. And that reduced the frequency of the re-write somewhat, but
it
doesn't change it fundamentally. Removing a message from a folder
eventually requires that the entire folder data file be re-written,
and
that is usually when mbox files become corrupt. If the index is
damaged, it'll become corrupt. If the operation is interrupted, it
may
become corrupt. mbox is a fairly fragile format, and one the scales
very poorly.
In every case I've seen, rewriting is done by concatenating all non
-deleted messages to a new mbox file, then replacing the original. The
last step is normally close to atomic, in fact it's safe to assume it
will be atomic if both files are on the same filesystem. YMMV if you
have more than one MUA writing to the same mbox concurrently.
poc