[Dovecot] 0.99.11-test6
Timo Sirainen
tss at iki.fi
Sun Aug 24 11:43:08 EEST 2003
http://dovecot.procontrol.fi/test/
I think I've fixed the problems that were corrupting indexes with the
new code. It happened every time you had expunged some messages and new
messages arrived. I think this release might actually work :)
disable_plaintext_auth = yes will be default from now on. It allows
plaintext authentication from localhost (127.*, ::1) however.
I just figured out that the lockless cache file reading prevents me
from fixing the mbox code to work the same way it used to. I'm not sure
actually how this would be best fixed.. Problem is that headers in
mails change and move the messages around in the mailbox, so I have to
keep track of them. Previously I just updated the header size in index
files.. but without read locks this can't be done safely.
One possibility would be to parse the whole mbox file every time when
the mailbox is opened (or when it needs to be read) and save the header
sizes in memory. That'd make it slower than it is today though..
Or maybe it'd work if I just grabbed exclusive lock whenever reading
header sizes. They could be then copied into memory to avoid locking
more than once. But that still creates locking contention if lots of
clients are reading the mailbox. Exactly in the situation where I'd
mostly use mboxes..
I could also save it in .imap.index file which still currently uses
read-locks. But I'd rather want to get rid of them in there too.
More information about the dovecot
mailing list