[Dovecot] Hierarchy separator usage -- and a bijou bug? (was: Prayer, Maildir and Folders whose names begin with ".")

Mike Brudenell pmb1 at york.ac.uk
Sat Mar 10 22:00:09 EET 2007


Greetings-

On 9 Mar 2007, at 19:40, Timo Sirainen wrote:

> I don't think stat()ing the same files is all that slow, at least as
> long as you're not using NFS. They should stay in kernel's buffer  
> cache
> so they won't do extra disk I/O.

Which, of course, for our setup they will be :-}

We'll be putting the Maildirs into an NFS-mounted filestore with  
quotas, and the control files into an NFS-mounted filestore without  
quotas.  These two filestores will then be mounted on each of our  
load-balanced servers running Dovecot.  The index files are going on  
locally attached disk without quotas.


>> So it appears that using hierarchy separator:
>>
>> 1.  Enables the chosen character to be used to separate name  
>> components
>>      on the way TO Dovecot *IN ADDITION TO* the still-operating
>> standard "."
>>
>> and
>>
>> 2.  Translates mailbox names coming OUT from Dovecot (in most  
>> cases: see
>>      Problem 2 below) to use the chosen character instead of "."
>>
>> and
>>
>> 3.  Doesn't magically :-) let you use "." in folder names as you've
>> changed
>>      the hierarchy separator to "/"
>
> I don't see any other way of doing this. Except possibly to give
> "invalid mailbox name" errors, or maybe even change the dot  
> silently to
> some other character. All of these options kind of suck.
>
> One possibility would be to use some kind of escaping like change dots
> in the mailbox names to \d or something. That wouldn't exactly be
> maildir++ compatible, but probably wouldn't be against the spec  
> either.
> So .. hmm. Maybe for Dovecot v1.2 :)

I have to confess that I'd assumed some sort of escaping would be  
taking place behind the scenes.  "\d means ." wasn't what I was  
expecting as it isn't sufficiently extensible: I was half-expecting  
something like the encoding used in URLs: eg, "%nn" where "nn" is the  
hex code of the ASCII character.  For example "%2F" is the "/"  
character, and "%25" is the "%" character itself.

Of course it would be very difficult to introduce something like this  
now for Dovecot because potentially folders might now exist in  
someone's mailstore with such character sequences in their name.  I  
suspect the only reliable way would be to have some sort of  
conversion script to rename folders appropriately (and update any  
associated files Dovecot needs to maintain for them?).

I guess I'm just unused to Maildir and the restrictions it imposes as  
I come from a Berkeley and MBX format background here.  Of course  
these suffer from their own restrictions: no "/" in folder names; a  
given name can be either a mail folder or a 'folder that contains  
folders' but not both.


Cheers,
Mike B-)

-- 
The Computing Service, University of York, Heslington, York Yo10 5DD, UK
Tel:+44-1904-433811  FAX:+44-1904-433740

* Unsolicited commercial e-mail is NOT welcome at this e-mail address. *




More information about the dovecot mailing list