on 5-13-2009 8:55 AM Richard Hobbs spake the following:
Timo Sirainen wrote:
On May 13, 2009, at 9:57 AM, Richard Hobbs wrote:
Depends on the usage, but it's significantly better performing than UW-IMAP. Dovecot+mbox is also significantly faster than UW-IMAP+mbox. OK... so Dovecot is certainly significantly faster that uw-imapd in both cases, but is dovecot fastest with mbox or maildir? I would assume maildir, but you never know... It's not that simple to answer. With mbox it's probably faster to read through all mails, because they're in a single file. With Maildir it's faster to delete mails, because it only needs to delete a single file, instead of moving data around in the mbox file. But Maildir has less problems and it's much less likely to get corrupted, so even if mbox performance would be better in some cases I'd recommend Maildir.
OK... so in both cases, the files are indexed and headers etc... cached, so in both scenarios:
maildir - "slow" to read mails, but all indexed, so slowness kinda disappears.
mbox - "slow" to delete mails - indexing will help this problem, but the filesystem will still have work to do in order to join the two halves of the file. Actually, I think a new file is written with everything re-written except the deleted message and then linked over the old file or renamed to the old file. That is why many clients will just mark them deleted and then you run a separate purge step, or the client is set to purge on exit. That is more efficient because the big write step is only done once.