I have set a master-slave ldap system for tesing replication on
both
2.1.12 and 2.1.16, both got the same problem. My configuration file:
################################################################
# Config on Master : ################################################################ include /usr/local/etc/openldap/schema/core.schema database bdb suffix "dc=hinet,dc=net" rootdn "cn=Manager,dc=hinet,dc=net" rootpw managers directory /usr/local/var/openldap-data index objectClass eq replogfile /usr/local/var/openldap-slurp/replica.log
replica host=host2.hinet.net:389 binddn="cn=Manager,dc=hinet,dc=net" bindmethod=simple credentials=managers ################################################################ ################################################################
# Config on Slave : ################################################################ include /usr/local/etc/openldap/schema/core.schema database bdb suffix "dc=hinet,dc=net" rootdn "cn=Manager,dc=hinet,dc=net" rootpw managers directory /usr/local/var/openldap-data index objectClass eq updatedn
"cn=manager,dc=hinet,dc=net"
updateref ldap://host1.hinet.net:389 ################################################################ Everthing is all right when I insert the follwing node into Master:
dn: dc=hinet,dc=net
objectclass: dcObject objectclass: organization dc: hinet o: ChunHwaTelecom The replication from master to slave works fine.
But once I try to insert the same node into Slave(for testing updateref), the ldapadd command return me the error message: adding new entry "dc=hinet,dc=net"
ldapadd: update failed: dc=hinet,dc=net ldap_add: Internal (implementation specific) error (80) additional info: no structuralObjectClass operational attribute I did try the "-C" parameter for ldapadd but didn't help.
The following message was generated by "-d 1" parameter: ***********************************************************
ldap_chkResponseList for msgid=2, all=1 ldap_chkResponseList returns NULL ldap_int_select read1msg: msgid 2, all 1 ber_get_next ber_get_next: tag 0x30 len 58 contents: ldap_read: message type add msgid 2, original id 2 ber_scanf fmt ({iaa) ber: ber_scanf fmt ({iaa}) ber: ldap_chase_referrals read1msg: V2 referral chased, mark request completed, id = 2 new result: res_errno: 80, res_error: <no structuralObjectClass operational at> read1msg: 0 new referrals read1msg: mark request completed, id = 2 request 2 done res_errno: 80, res_error: <no structuralObjectClass operational attribute>, res> ldap_free_request (origid 2, msgid 2) ldap_free_connection ldap_free_connection: refcnt 1 ldap_parse_result ber_scanf fmt ({iaa) ber: ber_scanf fmt (}) ber: ldap_msgfree ldapadd: update failed: dc=hinet,dc=net ldap_perror ldap_add: Internal (implementation specific) error (80) additional info: no structuralObjectClass operational attribute ldap_unbind
ldap_free_connection ldap_send_unbind ber_flush: 7 bytes to sd 5 ldap_free_connection: actually freed *********************************************************** No idea why "V2 referral chased" but not v3,
"ldapadd -P 3" didn't change the version
to v3 either.
What did I miss or did I do anything wrong with my configure ?
Thanks for your help in advance.
|