On Mon, 24 Sep 2007, Bron Gondwana wrote:
Picture if you will...
sync_client finds a message missing on the replica during a mailboxes
event and causes a sync_combine_commit to be called on the replica to
absorb the new messages.
* cyrus.index is re-written with new cache_offset values for each message
* cyrus.cache is re-written with just the records in cyrus.index
* cyrus.expunge is ***ERROR, BOGUS CACHE FILE OFFSETS***
The common cause of sync_combine_commit() will be unexpunge on the master.
I imagine that a single GUID appearing in cyrus.index and cyrus.expunge is
bad news. sync_server needs to know about the expunge index. It did in my
original code base, but replication got merged before delayed expunge.
More later. In theory I'm on holiday this week.
--
David Carter Email: [EMAIL PROTECTED]
University Computing Service, Phone: (01223) 334502
New Museums Site, Pembroke Street, Fax: (01223) 334679
Cambridge UK. CB2 3QH.