cyrus replication validation

Rob Mueller robm at
Fri Apr 6 22:31:55 EDT 2007

> The provided Cyrus tool "make_md5" is for validating replication.  It
> would, for instance, have found the recently discussed bug in  sync_server 
> that caused random files to be overwritten in the event  that sync_server 
> reused a stale staging file.  It would probably be  cool if there were 
> documentation somewhere that advised people on how  to run it and how to 
> use it to validate replication.

We have a patch that helps with this as well see "MD5 UUIDs" here:

Basically it does two things:
1. You can make the UUIDs of all messages the first 11 bytes of the MD5 of 
the message
2. You can fetch a computed MD5 of any message on disk via IMAP

Using the second, you can do complete validation via IMAP, just iterate 
through all folders and all messages, get the computed MD5 and compare on 
both sides.

The UUID bit is just designed to help replication when messages are moved 
between folders, rather than having to resend the entire message on a move, 
it can just link them from one folder to the other at the replication end.


More information about the Info-cyrus mailing list