Cyrus IMAPd 2.4.0 Released
brong at fastmail.fm
Wed Oct 13 08:30:09 EDT 2010
On Wed, Oct 13, 2010 at 09:23:11AM +0200, Rudy Gevaert wrote:
> On 10/11/2010 11:48 PM, Ken Murchison wrote:
> >I am pleased to announce the release of Cyrus IMAPd 2.4.0.
> This is really great news! I'm going to test asap. Thank you to
> everyone who contributed.
> >- Replication code largely rewritten
> Bron, two specific questions for you about the replication.
> I saw that this code base can recover from a split brain. What is
> the procedure? Is there in any documentation about it?
It's automatic. The replication code notices that just applying the
changes from the master to the replica doesn't generate the same
SYNC_CRC value, and it falls back to a full mailbox fetch and
comparison. GUID mismatch messages are promoted to new UIDs and
flag changes are made one direction or the other depending who has
the most recent modified time. Obviously if there are flag change
clashes (like you set \Flagged at one end and \Seen at the other)
then one end will lose detail - we don't have change history per
flag in the underlying format.
> Previously I was using 0019-GUID-IMAP-COMMANDS.patch. Is there any
> hope in getting this updated? Or is it already applied?
> I found this a great way to check if the master and replica are in sync.
It still exists :) Check github.com/brong/cyrus-imapd/branches/fastmail -
which is what we apply on top of 2.4 for the FastMail packages. It's
not something we want to push upstream because it's non-standard IMAP,
and the eventual plan is to add the per-message ANNOTATION RFC and
expose the values as read-only annotations.
More information about the Cyrus-devel