Description of problem: When renaming a subtree that contains group and user entries such as the users are members of the groups, referential integrity plugin operation fails.
From Noriko's email:
I'm afraid this particular test case may not work with referential integrity with the betxn timing.
This case renames ou=A,dc=suffix to ou=X,ou=Y,ou=Z,dc=suffix. And we have users and groups in ou=A,dc=suffix with having the users as a member in the groups. Please note that users are located prior to the groups.
If we rename ou=A,dc=suffix to ou=X,ou=Y,ou=Z,dc=suffix, its children are renamed and it triggers the referential integrity plug-in (Let's say uid=testuser). In the reverential integrity plug-in, it searches entries which have the DN (uid=testuser,ou=A,dc=suffix) and it tries to replace it with a new DN (uid=testuser,ou=X,ou=Y,ou=Z,dc=suffix). But the found group entry's DN is still an old one (cn=testgroup,ou=A,dc=suffix). And modifying the entry is failing in the test case due to no such entry (LDAP_NO_SUCH_OBJECT).
Version-Release number of selected component (if applicable): 389-ds-base-1.3.1.6-24
How reproducible: always
Steps to Reproduce: 1. Create a (large) number of entries as groups and members of these groups. 2. Rename the subtree as in description
Noriko,
Can you please clarify the testcase?
I setup:
ou=A,dc=example,dc=com ou=Z,dc=example,dc=com ou=Y,ou=Z,dc=example,dc=com
Added 5 users under ou=A Added a group under ou=A, and added those 5 users
Then I did the modrdn:
ldapmodify.... dn: ou=A,dc=example,dc=com changetype: modrdn newrdn: ou=X deleteoldrdn: 1 newsuperior: ou=Y,ou=Z,dc=example,dc=com
resulting in "ou=A,dc=example,dc=com" => "ou=X,ou=Y,ou=Z,dc=example,dc=com"
Everything looks good after this operation. The group does contain the correct/new member values, and if I delete a user it is removed from the group.
Is there something I'm missing?
Thanks, Mark
Hi Mark, please take a look at bz1082542. I'm clearing "needinfo" flag for now. (Please feel free to set it if you need more info...)
Hi Mark, I also could not reproduce the problem on the multiple combinations... (see the bug)
Closing since this can not be reproduced now...
Metadata Update from @nhosoi: - Issue assigned to mreynolds - Issue set to the milestone: 1.3.1.23
389-ds-base is moving from Pagure to Github. This means that new issues and pull requests will be accepted only in 389-ds-base's github repository.
This issue has been cloned to Github and is available here: - https://github.com/389ds/389-ds-base/issues/1110
If you want to receive further updates on the issue, please navigate to the github issue and click on subscribe button.
subscribe
Thank you for understanding. We apologize for all inconvenience.
Metadata Update from @spichugi: - Issue close_status updated to: wontfix (was: Invalid)
Login to comment on this ticket.