[Dovecot] Dovecot LDA munging INBOX access times?
Steven F Siirila
sfs at tc.umn.edu
Thu Jun 14 06:51:02 EEST 2007
On Thu, Jun 14, 2007 at 06:22:45AM +0300, Timo Sirainen wrote:
> On Wed, 2007-06-13 at 17:52 -0500, Steven F Siirila wrote:
> > We are running Dovecot 1.0.0 using mbox format (currently in the midst
> > of conversion from UW IMAP). We discovered today that the Dovecot LDA
> > is accessing the user's INBOX at delivery time!
>
> Well, there are two things:
>
> 1) It always makes sure that the mbox file ends with "\n". I guess this
> isn't all that important, but I'm not really interested in just removing
> the code.
If that were the only reason for opening in read mode I'd lobby for this
to be changed. :)
> 2) If index files are fully synced, Dovecot writes X-UID: header. It
> also updates nextuid field in X-IMAP: / X-IMAPbase: header of the first
> message, which causes Dovecot to read() the file. The nextuid update
> isn't really required, but I think some other bug shows up if it isn't
> done.
Do these operations apply to Deliver or just IMAP/POP?
Not knowing enough about how the indexes work.... Question: Is it possible
for Deliver to append a message w/o writing an X-UID header, leaving that
operation to the IMAP/POP client code, and still maintain an updated index?
If not, are there any options I can provide to Dovecot LDA to make it
function without index file updating?
> It would be possible to check the atime before any reading is done and
> then later after message is saved it could be updated back. Hmm. Well,
> attached a patch that seems to work. I'm not sure if I want to add it to
> v1.0.1.
Hmm. I wonder how much of a timing window is left; this could be a viable
option for us. However, I would like to consider our future options for
mailbox formats other than mbox (we will eventually migrate I'm sure).
What we have is a daemon called "mailattrd" on our mail servers which runs
on a TCP port and simply does a stat() on a user's mailbox and returns the
atime, mtime, ctime values of said mailbox. That "service" is used by a
variety of our applications. We were thinking of another possibility:
changing Dovecot IMAP/POP to update the last access time (open in READ)
of a specific file other than the user's INBOX. However, we'd rather not
maintain local modifications unless absolutely necessary. Any thoughts on
alternatives which might be mailbox-format-independent?
Thanks Timo for your super and timely support -- it is greatly appreciated!!
--
Steven F. Siirila Office: Lind Hall, Room 130B
Internet Services E-mail: sfs at umn.edu
Office of Information Technology Voice: (612) 626-0244
University of Minnesota Fax: (612) 626-7593
More information about the dovecot
mailing list