replication is unable to fix uidvalidity difference

Bron Gondwana brong at
Mon Sep 3 05:18:06 EDT 2007

On Mon, 3 Sep 2007 10:07:36 +0100 (BST), "David Carter" <dpc22 at> said:
> On Mon, 3 Sep 2007, Bron Gondwana wrote:
> > Our "checkreplication" script has managed to find uidvalidity
> > differences between a couple of folders.  I'm not sure how they
> > crept in, probably other bugs causing reconstructs with missing
> > index files or something.  Anyway...
> >
> > Reading the sync_client protocol, I notice that do_mailbox_single
> > doesn't actually send the uidvalidity as part of the local mailbox
> > status from the server, so it can't even tell there's a difference.
> Oops, yes. I think that this can only happen if the UIDvalidity changes 
> while the UniqueID remains the same, which means reconstruct on a mailbox 
> which is missing cyrus.header.

My reading was a reconstruct without cyrus.index.  If you reconstruct
without a header it will get a new UniqueID, but if you reconstruct without
an index it doesn't know the UidValidity, so it sets it time().

But yeah, in a site as big as us, anything that can go wrong will at some

  Bron Gondwana
  brong at

More information about the Cyrus-devel mailing list