[Dovecot] Sub-Sub-Subfolders not shown after converting from maildir to mdbox

William Blunn bill+dovecot at blunn.org
Wed Sep 8 21:24:18 EEST 2010


On 06/09/2010 23:54, Patrick Westenberg wrote:
> I just recognized a problem concerning subfolders after converting 
> from maildir to mdbox. Thunderbird and SeaMonkey don´t show folders 
> that are subfolders of subfolders.
>
> Using Thunderbird or Seamonkey, Folder1 and Folder2 are listed and can 
> be subscribed to but Folder3 never gets listed. If I create Folder4 as 
> a new subfolder from Folder2 it works, so the problem only exists with 
> existing folders from converted maildirs.

I've just run a test with a virgin Maildir setup on Dovecot 2.0.1.

After raising three levels of folder on the server side ("foo", 
"foo.bar", and "foo.bar.baz"), Thunderbird 3.0.6 was only able to see 
into the first two levels. Listing folders through a manual IMAP looks OK.

I also ran a test on a virgin mdbox setup with a Namespace to force the 
separator into a dot, to make it behave similarly to Maildir at the IMAP 
level). Same results; Thunderbird 3.0.6 can only see into the first two 
folder levels. Listing folders through a manual IMAP looks OK.

So I don't think the problem is mdbox.

I suspect there is a bug in Thunderbird 3.0.6 wherein it cannot 
subscribe to folders more than two levels deep.

I think you didn't notice the problem before because all folders were 
already subscribed.

I was able to come up with a sort-of workaround which is to manually add 
the folder name to the subscriptions file on the server side. 
Thunderbird is then able to see the folder (may need to restart 
Thunderbird).

Maybe you could drag the subscriptions data over from the old Maildir 
folders over into the mdbox folders?

If you took the default separators (dot under Maildir and slash under 
mdbox) then you'd need to change those in the subscriptions files ("sed 
-e 's:\.:/:g' < Maildir/subscriptions > mdbox/subscriptions"perhaps) or 
set up a Namespace to force the new mdbox config to use a dot as the 
separator.

Bill


More information about the dovecot mailing list