On Tue, 2013-01-29 at 03:37 -0600, Stan Hoeppner wrote:
On 1/29/2013 1:37 AM, Alexandr Sabitov wrote:
Dear All,
I have noticed that dovecot.index is not generated straight away if you have just a few emails in the mailbox. Instead of that dovecot.index.log is modified and accessed by clients.
Only if the number of email reaches some level then it creates dovecot.index in user mailboxes.
Can somebody please tell me when (in my understanding of the process) the index log file drops all data into the mail index file. What does trigger that ? Sorry I couldn't find any info on that in the wiki.
Dovecot is behaving here as designed. You haven't found the technical answer because there is no configurable variable for this behavior--it's hard coded. Thus it is not documented.
The layman's explanation is this: up to a certain amount of mail it is more expensive to create the index than to simply read the mail. Beyond that point indexing has benefit. To understand how that decision is made requires reading the source, and understanding it.
The index still exists. It's just that for new mailboxes the dovecot.index.log file contains everything that is necessary to create a dovecot.index file, and Dovecot just hasn't gotten around to actually creating it. If a mailbox shrinks enough, the dovecot.index file could in theory be deleted as well (and maybe in future Dovecot version it will).
So dovecot.index is just a snapshot that gets updated every once in a while. http://wiki2.dovecot.org/IndexFiles and http://wiki2.dovecot.org/Design/Indexes has some more details, although they don't seem to talk about this exact thing.