[Date Prev][Date Next] [Chronological] [Thread] [Top]

(ITS#3576) 2.3.1alpha and glue overlay - writing to wrong database



Full_Name: Kevin Spicer
Version: 2.3.1alpha
OS: Solaris 9
URL: ftp://ftp.openldap.org/incoming/
Submission from: (NULL) (62.190.55.157)


It seems that when using the glue overlay subsidiary databases in certain
configurations directory updates get sent to the wrong server.

This seemed to work fine using the previous subsidiary declarations in 2.2.

I have several servers which together make up a complete directory tree, but I
replicate all the directory portions to each server.  Each server contains the
entire tree, but some portions on each server are replicated with slurpd.  The
glue overlay is used to tie the replicated and non-replicated portions together.
 One server acts as a master for the root of the tree.  The problem arises when
attempting to make changes on the other servers to the section of the database
that is local.  Changes to the local database are referred to the root master
server which accepts them (even though it holds only a replica of this data) and
applies the changes to the replica.

For example.....


Server A (Root Master) slapd.conf (pertinent directives only)

# Subsidiary database replicated to here by slurpd on Server B
database bdb
suffix "ou=test,dc=domain,dc=com"
updatedn cn=sync,dc=domain,dc=com
updateref "https://serverb.domain.com";

# Root database master here
database bdb
suffix "dc=domain,dc=com"
overlay glue
glue-sub "ou=test,dc=domain,dc=com"
replica uri=ldaps://serverb.domain.com
    binddn="cn=sync,dc=domain,dc=com"
    bindmethod=simple credentials=password
####################

Server B (Subsidiary Master) slapd.conf (pertinent directives only)

# Subsidiary database master here
database bdb
suffix "ou=test,dc=domain,dc=com"
replica uri=ldaps://servera.domain.com
    binddn="cn=sync,dc=domain,dc=com"
    bindmethod=simple credentials=password

# Root database replica here
database bdb
suffix "dc=domain,dc=com"
updatedn cn=sync,dc=domain,dc=com
updateref "https://serverb.domain.com";
overlay glue
glue-sub "ou=test,dc=domain,dc=com"

##########

Attempting an add or modify within the "ou=test,dc=domain,dc=com" tree on server
B results in a referral to Server A, which accepts the update even though it is
only a replica.