[Dovecot] CONDSTORE + QRESYNC extensions
Ed W
lists at wildgooses.com
Fri Mar 14 19:31:35 EET 2008
> QRESYNC would require keeping track of expunges. This could be
> implemented by just going through records in log files to find out what
> messages have been expunged since the given modseq (= log seq+offset).
> Although I'm not sure if it would be better to have a separate expunge
> log. To allow rarely (e.g. once a week?) syncing clients the .log files
> may have to be rotated less often, so they would take more space. Also
> reading through them to find expunges would be slower than reading a
> separate log having only expunges. But writing a separate expunge log
> would add extra writes and there's no guarantee that it's ever even
> read.
>
Yeah, expunges are one of the fairly crucial things to track here in
order to support sync between servers. You can always infer creation of
new messages by seeing that they exist on one server and not the other,
but you can't differentiate between a delete on one server and a
creation on the other without some kind of "tombstone" record to record
the delete.
Iff it turns out to have a performance effect perhaps it would make
sense to have it as a configurable option? I'm sure someone will ask
for it to be configurable per folder or some incredible granulatity like
that, but I'm thinking that for most purposes having a per server option
will be plenty...?
Just my 2p..
Cheers
Ed W
More information about the dovecot
mailing list