On 25.1.2007, at 23.10, Charles Marcus wrote:
- fsync_disable=yes + mmap_disable=yes almost doubles the performance with 1 client, and over quadruples the performance with 10 clients. Why fsync_disable=yes + mmap_disable=no doesn't give that big of a performance difference? I've no idea. This is anyway such a large performance increment that I'll probably go and backport this setting to v1.0 too :)
In other words, these will be the new default settings? And I guess
you also now recommend using these settings in existing setups,
unless there is a platform/fs specific reason not to?
I'm not sure if I'll change default settings. Maybe I should set
mmap_disable=yes at least. But fsync_disable=yes means only that
Dovecot doesn't do any fsync() calls, which means that if the
computer crashes at that point, Dovecot could have lied to the client
that "OK, your saved message is safe" while in reality it isn't. So
it'll default to no, but if you don't care about such problems that
much you can enable it..
- Dovecot's mbox code kicks maildir's ass.
Hmmm... trying to understand the significance of this. I always
thought maildir was better=faster. I can still readily see how
maildir is more reliable (one message getting corrupted means you
only lose that one message), but again, I always thought it was
faster too.
I think most people think maildir is faster only because all other
mbox readers are so horribly slow. And that's because they don't use
index files. Pretty much the only thing that's slower in mbox is
expunging old messages, which causes a lot of data to be moved around
inside the mbox file.
Also maildir's reliability isn't just because of that "only one
message getting corrupted", but it's that once the message has been
written, there's no way for it to get corrupted unless the filesystem
breaks. With mbox the data is constantly being moved around and it
can break both because of software and because computer crashes while
moving the data around.