

Mail storage in local disk
==========================




Filesystems
===========



 * See >>MailboxFormat/Maildir<< for Maildir-specific filesystem optimizations 
 * Dovecot doesn't rely on atime updates, so you can mount the filesystem with noatime 


Index files
===========


Keeping index files in a different disk than the mail spool gives you better performance. The indexes have a lot of write activity so it is recommended to use RAID-10 instead of RAID-5 for them. 


Fsyncing
========


By default Dovecot calls fsync() and fdatasync() whenever it's useful to prevent potential data loss. The main reason for this is so that Dovecot won't lie that the message was saved to the disk, if in fact a power failure a second later would lose the message. With IMAP clients this is perhaps a less serious problem, because the lost message was most likely either a mail in Draft mailbox or a message in "Sent Messages" mailbox. In any case a message that the user had already seen. However if >>Dovecot LDA<< loses a message, the user never even knew that the message existed, unless the sender decides to resend it. 
Since power failures and kernel panics are quite rare, many people are tempted to disable fsyncing because it may increase the performance quite a lot. Dovecot allows this since v1.0.rc27 by setting 'fsync_disable=yes'. However you should consider leaving it to "no" for LDA. You can do this with: 

---%<-------------------------------------------------------------------------
# Enable for IMAP/POP3
fsync_disable = yes

protocol lda {
  fsync_disable = no
}
---%<-------------------------------------------------------------------------



Dovecot Settings
================



 * 'dotlock_use_excl=yes' is safe to use with local filesystems, and it's faster. 
 * v1.0: 'mmap_disable=yes' appears to give better performance due to various reasons, but it also increases the memory usage. (With v1.1 'mmap_disable=no' should be always faster) 

(This file was created from the wiki on 2007-12-11 04:42)
