On 12.12.2010, at 9.39, Stan Hoeppner wrote:
mail_location = maildir:~/Maildir:INDEX=MEMORY
The ":INDEX=MEMORY" disables writing the index files to disk, and as the name implies, I believe, simply keeps indexes in memory.
I think maybe I shoudn't have called it INDEX=MEMORY, but rather more like INDEX=DISABLE.
"If you really want to, you can also disable the index files completely by appending :INDEX=MEMORY."
My read of that is that indexing isn't disabled completely, merely storing the indexes to disk is disables. The indexes are still built and maintained in memory.
Timo, is that correct?
It's a per-connection in-memory index. Also there is no kind of caching of anything (dovecot.index.cache file, which is where most of Dovecot performance usually comes from).
I don't know if, or how much, storing them in RAM via :INDEX=MEMORY consumes, as compared to using a ramdisk. The memory consumption may be less or it may be more. Timo should be able to answer this, and give a recommendation as to whether this is even a sane thing to do.
I think INDEX=MEMORY performance is going to suck. http://imapwiki.org/Benchmarking explains IMAP performance a bit more. By default Dovecot is the "Dynamically caching server", but with INDEX=MEMORY it becomes "Non-caching server".