Hi Howard! As much as I hate to say this, it did not solve the problem I was running into. =( I rebuilt openldap with the entry.c patch and rebuilt the LDAP database from scratch (pulling from sources and using slapadd). Then I ran the following statement via ldapmodify (as always, XXX'd out sensitive info):
dn: uid=XXX,ou=students,ou=people,dc=ncsu,dc=edu changetype: modify replace: ou ou: Political Science - Int Politics Conc ou: B A - History - replace: ncsucurriculumcode ncsucurriculumcode: LIP ncsucurriculumcode: LAH
And I get:
modifying entry "uid=XXX,ou=students,ou=people,dc=ncsu,dc=edu" ldap_modify: Type or value exists (20) additional info: modify/replace: ou: value #1 already exists (and again, I can 'fix' it by doing a delete: ou and then redoing the replace; ncsucurriculumcode fails in exactly the same way; after deleting and redoing the replace, i can replace the ou over and over and over again with the same data and it's fine every time from then on)
Entry as it stood before running that statement was (as produced by slapcat):
dn: uid=XXX,ou=students,ou=people,dc=ncsu,dc=edu objectClass: person objectClass: inetOrgPerson objectClass: ncsuPerson uid: XXX cn: xxx sn: XXX title: Sophomore ncsuTwoPartName: XXX organizationalStatus: registered o: NC State University givenName: XXX ncsuMiddleName: XXX initials: XXX displayName: XXX ncsuAltDisplayName: XXX ncsuCampusID: XXX ncsuClassCode: SO ou: Political Science - Int Politics Conc ncsuCurriculumCode: LIP ou: B A - History ncsuCurriculumCode: LAH mail: ztmiller@gmail.com ncsuPrimaryEMail: XXX registeredAddress: XXX postalAddress: XXX telephoneNumber: XXX l: Graham st: NC postalCode: 27253 ncsuPrimaryRole: student structuralObjectClass: inetOrgPerson entryUUID: d10a18fe-4286-102b-89b0-9fbe6f44e542 creatorsName: cn=XXX,dc=ncsu,dc=edu modifiersName: cn=xxX,dc=ncsu,dc=edu createTimestamp: 20070127191747Z modifyTimestamp: 20070127191747Z entryCSN: 20070127191747Z#000014#00#000000
Note that yes, I am replacing the setting with exactly what it was before, for testing purposes, but there's no reason that shouldn't work, correct?
Daniel
Daniel Henninger wrote:
RE23... ;D Does that mean I should wait for the next minor release? Or shall I pull from CVS/SVN? or?
You can pull the current slapd/entry.c from CVS (use the OPENLDAP_REL_ENG_2_3 tag) if you want to patch your current builds. The fix will be in 2.3.34.
-- -- Howard Chu Chief Architect, Symas Corp. http://www.symas.com Director, Highland Sun http://highlandsun.com/hyc OpenLDAP Core Team http://www.openldap.org/project/