dovecot-2.0: mdbox: Added a comment about how expunging works.
dovecot at dovecot.org
dovecot at dovecot.org
Mon Apr 19 16:31:53 EEST 2010
details: http://hg.dovecot.org/dovecot-2.0/rev/8e6cb40f577f
changeset: 11171:8e6cb40f577f
user: Timo Sirainen <tss at iki.fi>
date: Mon Apr 19 16:31:50 2010 +0300
description:
mdbox: Added a comment about how expunging works.
diffstat:
src/lib-storage/index/dbox-multi/mdbox-sync.c | 12 ++++++++++++
1 files changed, 12 insertions(+), 0 deletions(-)
diffs (21 lines):
diff -r c2c2c1dd252e -r 8e6cb40f577f src/lib-storage/index/dbox-multi/mdbox-sync.c
--- a/src/lib-storage/index/dbox-multi/mdbox-sync.c Mon Apr 19 16:15:57 2010 +0300
+++ b/src/lib-storage/index/dbox-multi/mdbox-sync.c Mon Apr 19 16:31:50 2010 +0300
@@ -1,5 +1,17 @@
/* Copyright (c) 2007-2010 Dovecot authors, see the included COPYING file */
+/*
+ Expunging works like:
+
+ 1. Lock map index by beginning a map sync.
+ 2. Write map UID refcount changes to map index.
+ 3. Expunge messages from mailbox index.
+ 4. Finish map sync, which updates head=tail and unlocks map index.
+
+ If something crashes after 2 but before 4 is finished, head != tail and
+ reader can do a full resync to figure out what got broken.
+*/
+
#include "lib.h"
#include "array.h"
#include "ioloop.h"
More information about the dovecot-cvs
mailing list