]> git.ipfire.org Git - thirdparty/dovecot/core.git/commit
Cache updating is done now by first reserving space where to write, and then
authorTimo Sirainen <tss@iki.fi>
Sun, 4 Jul 2004 20:00:47 +0000 (23:00 +0300)
committerTimo Sirainen <tss@iki.fi>
Sun, 4 Jul 2004 20:00:47 +0000 (23:00 +0300)
commit72cbf33ae81fde08384d30c779ff540752d9256c
treee8e79446567c2b647b53f7826a4d382b71a16634
parenta40d26f83af808a0ea1e212c001d682a96d870b0
Cache updating is done now by first reserving space where to write, and then
writing to it whenever buffer gets full. There is no persistent cache file
locks anymore because of this, but it also means that the same cached field
may be written multiple times to the file by different processes. Also since
we reserve more space than we actually need at first, it some space can be
wasted if multiple processes are updating the cache.

--HG--
branch : HEAD
14 files changed:
src/lib-index/mail-cache-compress.c
src/lib-index/mail-cache-lookup.c
src/lib-index/mail-cache-private.h
src/lib-index/mail-cache-transaction.c
src/lib-index/mail-cache.c
src/lib-index/mail-cache.h
src/lib-index/mail-index-private.h
src/lib-index/mail-index-sync-update.c
src/lib-index/mail-index-transaction-private.h
src/lib-index/mail-index-transaction.c
src/lib-storage/index/index-mail-headers.c
src/lib-storage/index/index-mail.c
src/lib-storage/index/index-mail.h
src/lib-storage/index/index-transaction.c