On 17.7.2010, at 0.07, Brandon Lamb wrote:
sdbox is really simple. mdbox is more complex. A few people have used sdbox with v1.x, but it's more or less rewritten with v2.0. With v2.0 I'm not aware of any sdbox installations, but there is at least one somewhat large mdbox installation. They've had some problems, but I think those are mostly gone now.
Any recommendation of one over the other?
Depends on the filesystem and disks I guess. mdbox should reduce mailbox fragmentation because it uses larger files. But maybe with SSDs that doesn't matter and the extra metadata just slows down. Or maybe not. I don't have any real world benchmarks.
I came across a 2009 mailing list entry where you showed some benchmark tests that had mdbox as the fastest.
They were benchmarks of some unrealistic tests.
Without any experience yet, my only possible hangup is being able to restore individual (lost, whatever other reason) mails for customers.
This is more difficult with sdbox and mdbox than with maildir. I haven't really thought about this before. I guess with both you could get the one file (or the entire mailbox, either way) and then force a index rebuild and then copy/extract the mail in some way (e.g. doveadm fetch, imap client, etc).
dsync is awesome and preserves everything. But test it anyway just in case. I'd anyway recommend setting pop3_save_uidl=yes and sometimes after that (when you think everyone's logged in at least once) switching to pop3_uidl_format=%g while still running maildir. With Maildir the new UIDLs are then the filenames and with dbox the UIDLs will be message GUIDs. Those are much more permanent than anything based on IMAP UIDs. Not a requirement, but still :)
Cool, if anything I could just have a script login to every users account and logout and that would do the same thing right?
That's all.
Any main/major/big reasons to try to go with mdbox over sdbox? sdbox being really simple = less prone to typos and other bad things happening?
There is much less potential for mailbox corruption with sdbox, since it's so much simpler.
Oh, what about if i migrate to sdbox, then decide to go with mdbox, will I want to know for sure ahead of time? Granted I guess thats kind of an obvious yes, but any big gotchas to know about if I did?
You can use dsync to easily switch between them.