[Dovecot] NFS issues [was: Dovecot-1.2 + Sieve + Managesieve on Debian]

Adam McDougall mcdouga9 at egr.msu.edu
Tue Mar 23 18:46:35 EET 2010

On 03/23/10 07:43, Brian Candler wrote:
> On Tue, Mar 23, 2010 at 05:42:02AM -0400, Charles Marcus wrote:
>> On 2010-03-22 9:31 PM, Stan Hoeppner wrote:
>>> Dovecot has built in locking support for NFS storage.
>> But it has always been problematic, according to Timo.
> Have you got any references on this, apart from http://wiki.dovecot.org/NFS ?
> I'm looking at migrating a courier-imap installation (FreeBSD frontends,
> Netapp backends, Maildir++) to dovecot. I'd be grateful of any known
> pitfalls I should be looking out for.
> I have done some small-scale testing and it looks fine. tcpdumping the NFS
> traffic, I see that the FreeBSD frontend is sending "access" requests to
> check that its local cache is not stale.  In tests with mailboxes containing
> 100 messages and a web IMAP frontend (atmail.org), Dovecot was generating
> about 1/4 of the total NFS traffic compared to courier-imap, because of how
> Dovecot creates a cache file containing the message headers.
> I see a link to http://www.freebsd.org/cgi/query-pr.cgi?pr=123755 in the NFS
> wiki page.  Does this problem affect only mbox over NFS, or maildir too?
> I've not observed any problem with courier-imap, although courier-imap is
> much dumber about caching, and also at the moment the majority of the
> userbase are on POP3 anyway.
> Regards,
> Brian.

I've used:

mmap_disable: yes
mail_nfs_storage: yes
mail_nfs_index: yes

on FreeBSD 6/7/8 and dovecot with multiple servers accessing the same 
mailboxes over NFS on a NetApp and it has worked fine since 1.0.16 or 
so, I think.  I use 1.1 now (haven't finished testing 1.2 and haven't 
done much with 8.x).  I have a load balancer in front and it sends IMAPS 
connections or HTTPS connections (making local IMAP calls) to randomized 
servers so even one person making 5 connections gets a speed benefit by 
using more than one server.

If the NFS support had problems you could also use mail_location to keep 
indexes local.

More information about the dovecot mailing list