John Morrissey wrote:
On Thu, Apr 03, 2008 at 12:10:49AM -0700, Howard Chu wrote:
Yes, it seems a bit silly to explicitly replicate it; that means the producer has to send its contents twice to each delta-sync consumer. Just configure an accesslog overlay on each consumer and let them regenerate the log locally.
Won't configuring a separate accesslog on the consumers result in slightly different accesslogs (relative to each other and to the provider) being generated, since there is inherent latency between the writes on the provider and the writes on the slaves? Also, won't the reqAuthzID in the consumers' accesslogs be different, since the syncrepl engine uses the rootdn internally to make the changes to consumers' databases?
There is write latency no matter what. If you interrupt things before an operation can be logged, then of course it will be different, and explicit replication won't change that fact.
Yes, the reqAuthzID will be different. But the replication mechanisms don't care about that; the modifiersName opattr is recorded and replicated explicitly. All of the other attributes will be identical.
Essentially, I want to have interchangable provider and consumers, so nobody has to think in situations like these. Given these examples, am I still silly wanting to replicate the accesslog database, or are there better ways of accomplishing the same things?
Just try it, and then decide if it doesn't meet your needs.
Think about it - since you say the goal is to have interchangeable provider and consumers, then you need to configure accesslog on all of the servers already. So yes, saying you don't want to do so is silly.