Hi All,

It would appear from my testing of the new 2.3 Replication code, that you lose any 'SingleInstanceStore' benefits on the replica as hardlinks on the master cannot be reproduced on the replica. In my situation, I often have large emails sent to multiple recipients on the same server and I am relying on hardlinks to keep my disk usage down. In addition, I also have a small pipe between my master and my replica and any large emails sent to hundreds of users gets copied over the link hundreds times rather that the single delivery done by LMTP. I was thinking that maybe one way to solve this might be to have Cyrus to keep it's own DB of hardlinked Messages and then it could send a replication message that effectively resolves to "If you don't have message user.xxxx 'nnnn', see if you can create it by hardlinking to one of the following messages 'user.foo nnnn,user.bar.Filed nnnn' (if the message hash is the same), otherwise I will send you a copy". Then when you subsequently replicate "user.bar.Filed nnnnn", you should be able to link the message in from the copy you replicated to 'user.xxxx'. It would obviously be a little more complicated to deal with some corner cases, but what are people's thoughts?
Is it worth trying to build something like this?
Do any others on the list make heavy use of hardlinking who would be adversely effected by the current replication methodology?

Cheers,
Roland
----
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html

Reply via email to