I'm considering converting a Cyrus system (managing my family's
e-mail) to Dovecot. I'm trying Dovecot 1.1.15 on an Ubuntu 9.04
(2.6.28-11-server) system. My production server is currently
running Cyrus 2.3.14.
Since I have a huge number of folders and subfolders, I need to use
LAYOUT=fs. However, it's not working consistently.
I tried setting up a test account in Thunderbird (2.0.0.21), and I
was able to create folders under the Inbox, and they showed up as
nested subdirectories under my ~/Maildir on my mail server. So far,
so good.
However, when I tried a home-grown Perl script (an archival scheme
for my work e-mail), Dovecot wouldn't create subfolders properly;
instead of nesting them (as I thought LAYOUT=fs would do), it used
a flat layout.
Here is a trace (generated by my Perl script) of an IMAP session.
This was supposed to log in as the user "stanford" (the name of
my archival account); create a folder named "2009" if not already
present; create (again, if not already there) a "2009-05" folder
inside the "2009" folder; and, finally, save a message (marked as
seen) inside the "2009-05" folder.
1 LOGIN XXXXXXXX XXXXXXXX1 OK Logged in.
2 STATUS user.stanford.2009 (MESSAGES)* STATUS "user.stanford.2009"
(MESSAGES 0)
2 OK Status completed.
3 STATUS user.stanford.2009.2009-05 (MESSAGES)* STATUS
"user.stanford.2009.2009-05" (MESSAGES 3)
3 OK Status completed.
4 APPEND user.stanford.2009.2009-05 (\Seen) {4043}
+ OK
(message text here . . .)
4 OK [APPENDUID 1243306507 4] Append completed.
5 LOGOUT* BYE Logging out
The above works perfectly when I'm talking to my Cyrus server.
However, when I tried the same thing with Dovecot, I got a folder
named "user.stanford.2009" in the "stanford" account's
Maildir,
and then another folder named "user.stanford.2009.2009-05" (again,
in the Maildir -- NOT nested in the "user.stanford.2009" folder)
-- and the message was stored in the "user.stanford.2009.2009-05"
folder.
I tried changing my Perl script to use "INBOX" instead of
"user.stanford" -- but the result was basically the same, except
I got new folders named "INBOX.2009" and
"INBOX.2009.2009-05"
directly in my archival account's Maildir.
Finally, I tried omitting any prefix at all on the folder names,
and I got new folders named "2009" and "2009.2009-05" --
again,
directly in Maildir -- no nesting of one folder within another.
I suppose I actually have two issues here -- the lack of folder
nesting (even with LAYOUT=fs), and also Dovecot's failure to
recognize a "user.XXX." prefix on a mailbox name as designating
user XXX's inbox (something that seems to work fine on Cyrus).
My Cyrus server currently has over 1,600 folders and subfolders,
so I absolutely can't / won't consider switching it to Dovecot
unless I can get the nested filesystem layout working.
Any thoughts?
--
Rich Wales / richw at richw.org / richw at stanford.edu
Wikipedia: http://en.wikipedia.org/wiki/User:Richwales
Facebook: http://www.new.facebook.com/profile.php?id=206680