[Dovecot] So, what about clustering and load balancing?

Stan Hoeppner stan at hardwarefreak.com
Mon Feb 15 08:13:51 EET 2010


Timo Sirainen put forth on 2/14/2010 1:31 PM:
> On Sun, 2010-02-14 at 01:16 -0600, Stan Hoeppner wrote:
>> If you use maildir format mailboxen, you physically can't run into a write lock
>> contention between the MTA and the imap process because the MTA writes every new
>> email to a new file name.
> 
> You're ignoring dovecot-uidlist and index files.

Apparently I'm missing something.  If the MTA is creating files per Maildir
specs, I fail to see how dovecot imap is going to be reading or writing one of
these new files before it's actually fully written.  I can't see a scenario
where there could be lock contention.  The MTA writes the new message files and
never touches them again.  Does Dovecot try to read them before they're actually
committed?

Is dovecot trying to open a new maildir file after the MTA calls stat() but
before link()?  If dovecot doesn't know of the existence of the file before the
link() operation commits the file to the filesystem, then I can't see how there
can ever be lock contention with maildir files.

Can you please explain Timo, so I understand my error here?

Thanks.

-- 
Stan


More information about the dovecot mailing list