[Imap-uw] Re: moving mail between folders is intermittently
mrc+uw at panda.com
Sun May 2 21:51:26 PDT 2010
On Sun, 2 May 2010, Linda Walsh wrote:
> Seems to be fine with me using the 'mbox.lock' locking files to
> gain exclusive access. I believe was a compatibility setting somewhere.
The .lock file is a delivery lock; to prevent more than one agent from
writing (= appending) to the mbox at the same time. It doesn't
synchronize between agents which hold state on the mbox.
The main issue is if any other mail reading program is consuming the mbox.
If Dovecot is the only consumer you will be OK. But if you have other
consumers (including Pine, Alpine, elm, /usr/ucb/mail, UW IMAP, etc.)
accessing the mbox while Dovecot is doing its thing there may be a
> I think the current version of dovecot does suport 'mix' (folders and
> messages in same?), but I didn't test it -- didn't want to screw up my
> working mail store. Maybe I'll eventually feel braver, out of curiosity.
I wasn't aware of Dovecot supporting mix. As far as I know, Dovecot only
supports maildir (its preferred format) and mbox.
> Doesn't Cyrus use maildir format, or is Cyrus=Courier?
No to both.
Cyrus format is a completely different format, with more in common with
netnews than maildir.
What may have confused you is that both Cyrus and maildir put each message
into a separate file. However, Cyrus does extra stuff to make it scale a
Maildir, in turn, does extra stuff to be NFS-safe at the cost of not being
at all ameniable for IMAP. Dovecot actually implements a modified version
of maildir which is not NFS-safe...
> One dir, many little files? just seemed likea mess to me. But my 80+
> active mailboxes might seem a mess to some.
Some people have many more mailboxes than that.
> No reason to NFS -- the IMAP server should be where the source files
> were and use it to mitigate access...using NFS and IMAP... two means to
> access same read/write share would almost inevitably lead to a mess.
Well, then, you are more sensible than a great many people! ;)
> I'm still trying
> synchronize everything between smb and local views of regular files, and end
> up with observable quirks.
Hey, if you really want fun and laughter, try synchronizing SMB, NFS, and
local files. Simultaneously! ;)
> One of the reasons that drew me to Dovecot was that my OS does support
> threads, so I wanted to use use things that provide multi-thread usage
> to better parallelize my workload -- it's the only way I'll ever do a
> better job of processor utilization.
I think that you may have mistaken what Dovecot's multi-threading does.
The multi-threading allows multiple simutaneous read/write access to an
mbox format mailbox, as long as Dovecot is the only consumer of the mbox
file (and you don't want to violate that assumption). It does this by
exchanging semaphores between the threads, which run in the same process;
otherwise there are no such semaphore with mbox format.
You get the same level of service in UW IMAP and Panda IMAP using mix
format. mix has its own equivalent semaphores and does not need to be
My new IMAP server at Messaging Architects is in fact also multi-threaded,
but it doesn't need the threading for semaphore exchange. It uses an
expanded form of mix that has metadata and stubbing (which I call "virtual
mailboxes" and am quite happy with/proud of). Right now, we're just using
the stubbing for user quarantines, in which the per-user quarantine
mailbox has stubbing pointers into the global quarantine which contains
the actual messages. The other extension in mix is that it is
> Thanks for the appraisal -- makes me feel like I wasn't crazy for moving the
> direction I did, given my hardware/software setup.
Yes, Dovecot is a reasonable server; and as I said in a previous message
Dovecot and Panda IMAP are the only two servers which are tested to be
I haven't yet had my new MA server tested yet, mostly because there are
some known issues in the underlying storage architecture that need to be
resolved first. I expect that it will eventually test fully-compliant as
-- Mark --
Democracy is two wolves and a sheep deciding what to eat for lunch.
Liberty is a well-armed sheep contesting the vote.
More information about the Imap-uw