CONDSTORE by default?

Ken Murchison murch at
Mon May 4 07:27:32 EDT 2009

There is a higher bookkeeping cost when only \Seen state changes because 
rather than just updating seen.db, we also have to tweak cyrus.index. 
The cost may not be enough to worry about, but since \Seen state is most 
likely the most frequently used flag (and most likely is changed 
separately from other flags), I didn't want to force CONDSTORE on people 
until we had a good handle on the performance hit.

Bron Gondwana wrote:
> Hi Ken, everyone,
> Can anyone think of a good reason why CONDSTORE isn't enabled
> by default for everyone all the time?  Back when it wasn't
> stable, fair enough - but I think it's pretty close now, and
> am willing to put a bit more effort in to finishing the job...
> Thunderbird 3 will support CONDSTORE to reduce the FLAGS traffic
> quite considerably, and hopefully other clients will follow suit
> if there is enough server support to be worth the effort.
> Looking at the code, the "bookkeeping" cost is quite low, and
> it always touches records that are being updated anyway, so the
> writes will be combined in the same block most of the time.
> Besides, it will simplify the code considerably to remove all
> the tests for "CONDSTORE ENABLED" everywhere.
> Bron ( looking at turning it on for all new mailboxes soon,
>        and then enabling it for all the old ones )

Kenneth Murchison
Systems Programmer
Carnegie Mellon University

More information about the Cyrus-devel mailing list