ian@uns.ac.rs wrote:
Full_Name: Ivan Nejgebauer Version: 2.4.32 OS: CentOS 5 URL: ftp://ftp.openldap.org/incoming/ivannejgebauer-120905.tgz Submission from: (NULL) (2001:4170:2000:2:213:d3ff:fecf:b9ea)
If a minimal chaining configuration is dynamically added to a consumer server in a provider/consumer pair running delta-syncrepl, it will stop working when the consumer is restarted. The configuration is modelled after the one used in test022 in the OpenLDAP source distribution:
Sorry this report was neglected for so long, and thanks for the excellent test case. This is now fixed in git master.
dn: olcOverlay={0}chain,olcDatabase={-1}frontend,cn=config objectClass: olcOverlayConfig objectClass: olcChainConfig olcOverlay: {0}chain
dn: olcDatabase={0}ldap,olcOverlay={0}chain,olcDatabase={-1}frontend,cn=config objectClass: olcLDAPConfig objectClass: olcChainDatabase olcDatabase: {0}ldap olcDbIDAssertBind: bindmethod=simple binddn="cn=Manager,dc=example,dc=com" credentials="secret" mode=self olcDbURI: "ldap://localhost:6389"
Scripts and data for replicating the issue are in the referenced archive. Quick summary:
# make clean-all master replica # ./start-master.sh # ./start-replica.sh # ./replica-apply.sh pmod-add.ldif # returns referral # ./replica-conf.sh chain.ldif # adds chaining configuration # ./replica-apply.sh pmod-add.ldif # chains to master # ./stop-replica.sh # ./start-replica.sh # ./replica-apply.sh pmod-del.ldif # returns referral, but shouldn't
I have tested both 2.4.32 and git master (54a111907b48900e1ce5de12a9d87818a334423d).