On Wednesday, September 10 at 07:50 PM, quoth Steinar Bang:
Gnus use a lot of custom flags to represent the messages state wrt. Gnus.
How well are these flags supported in dovecot? How fast are access to them? (Ie. will dovecot have to open the message and parse the headers)
The flag information is stored in the index, and for Maildir backends the first 26 flags are stored in the filename as well. In other words, access to flags is pretty dang fast, and for Maildir storage, never requires opening the message or parsing headers.
When you use mbox, though, the keywords are stored in the message's headers (X-IMAPbase), so parsing the headers is sometimes necessary. HOWEVER, Dovecot adaptively chooses what message information to keep in the index and cache. If a user is using Gnus, those keywords will end up in the mailbox cache, and generally won't need to be read from the message file.
Large numbers of keywords (esp. more than 26), though, hasn't been tested a whole lot, but should be reasonably fast (largely because of the index and cache files). Timo talked about this a few months ago and if I remember right he indicated that there were some inefficiencies in dealing with really large numbers of keywords, but since they're so rarely used in any significant volume, improving that component was a low priority.
~Kyle
The optimist thinks this is the best of all possible worlds. The pessimist fears it is true. -- J. Robert Oppenheimer