directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alex Karasulu <>
Subject Re: [replication] Master slave replication will not suffice
Date Thu, 24 Feb 2005 03:53:04 GMT
David Boreham wrote:

>> Have any recommendations?  Advice?  How would you proceed to 
>> introduce MMR into ApacheDS?
> Hmm...I can only speak in generalities: some of the
> techniques with which I'm most familar are patented...


> For replication, you always need to store extra state
> pertaining to the entries : change sequence numbers ,

Yep I figured that some kind of sequence number similar to the version 
in a svn repo would need to be maintained.  Almost like a txn-id.

> or similar. Try to be careful about how this is stored,
> otherwise you can end up with two databases that
> you must maintain consistency (e.g. with 2-phase commit)
> across. Ideally keep it all in the same database.

Ideally we would like to keep all data about an entry in the entry so 
it's replicated with it rather than putting this info into another area 
which also must be replicated.

> Be concerned about re-entrancy issues: an update
> to the local server may originate with a client, or
> with another replica, replaying its updates. Be sure

Hmmm trying to understand this.  I think you're referring to 
differentiating between client driven change verses changes induced by 
replication in which case I would use a special replication user to 
apply updates.  This way the special user can bypass the replication 

> to distinguish between the two properly to avoid re-propagating the 
> updates.
> Some updates will be due to conflict resolution,
> not a direct replayed update. Much of the trickness
> is to ensure that the conflict resolution mechanism
> converges.

Hmm have not even thought about conflict resolution strategies yet.  We 
really need a champion to drive this process who knows what the heck 
they're doing.  I'm not feeling very confident myself.

> I have studied the Apache DS code, but right now
> I'm not sure I can think of specific code-related
> advice.


> You need to pay very special attention to testing.

Oh yeah this goes without saying in general especially for tough 
problems like MMR.

Do you have an LDAP background? Just curious where your experience with 
MMR is coming from :).

Thanks for the advice.  I'll look this over a few more times. 


View raw message