Hajo Kliemeck (JIRA) wrote:
rfc 4533 implementation differences between openldap and apacheDS
Tthere is an incompatibility between the RFC 4533 implementation of apacheDS
and openldap.
openldap uses the cookie structure "rid=<replicaId>" (initial) or
"rid=<replicaId>,csn=<Csn value>" (update) while apacheDS is using NULL for
the initial state and the structure"<replicaId>;<Csn value>" for the update
state. in the RFC its said:
{quote} The absence of a cookie or an initialized synchronization state in
a cookie
indicates a request for initial content.....
{quote}
first is apacheDS like, second is openldap like
It should be possible to adapt the structure or the behavior.
Note that if you don't send <replicaId> in your initial query, the provider
cannot possibly know what replicaId to use in the first cookie it sends back
to you.
There's a desire to ensure that a cookie unambiguously defines a specific
provider-consumer relationship, and that a given cookie cannot be used with a
different provider or a different consumer. (In practice this doesn't matter
at all to the replication protocol, but keeping replicaIDs straight aids in
debugging when you're looking at hex dumps of packet traces.)
--
-- Howard Chu
CTO, Symas Corp. http://www.symas.com
Director, Highland Sun http://highlandsun.com/hyc/
Chief Architect, OpenLDAP http://www.openldap.org/project/