Bug 621928
Summary: | Unable to enable replica (rdn problem?) on 1.2.6 rc6 | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | [Retired] 389 | Reporter: | Jonathan Boulle <evinco> | ||||||
Component: | Replication - General | Assignee: | Noriko Hosoi <nhosoi> | ||||||
Status: | CLOSED CURRENTRELEASE | QA Contact: | Viktor Ashirov <vashirov> | ||||||
Severity: | high | Docs Contact: | |||||||
Priority: | low | ||||||||
Version: | 1.2.6 | CC: | gerhardus.geldenhuis, nhosoi, rmeggins | ||||||
Target Milestone: | --- | ||||||||
Target Release: | --- | ||||||||
Hardware: | All | ||||||||
OS: | Linux | ||||||||
Whiteboard: | |||||||||
Fixed In Version: | Doc Type: | Bug Fix | |||||||
Doc Text: | Story Points: | --- | |||||||
Clone Of: | Environment: | ||||||||
Last Closed: | 2015-12-07 16:37:03 UTC | Type: | --- | ||||||
Regression: | --- | Mount Type: | --- | ||||||
Documentation: | --- | CRM: | |||||||
Verified Versions: | Category: | --- | |||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||
Embargoed: | |||||||||
Bug Depends On: | |||||||||
Bug Blocks: | 543590, 639035 | ||||||||
Attachments: |
|
Description
Jonathan Boulle
2010-08-06 14:14:39 UTC
The problem is that the entryrdn index does not like adding an entry without a real parent. Because the database starts out empty InstallLdifFile = none AddOrgEntries = No The RUV entry nsuniqueid=ffffffff-ffffffff-ffffffff-ffffffff,dc=example has no parent entry dc=example. This is ok for the id2entry index - there is a special case for the RUV tombstone entry. But because of the hierarchical nature of the entryrdn, since dc=example doesn't exist, it won't add nsuniqueid=ffffffff-ffffffff-ffffffff-ffffffff. The workaround is to use InstallLdifFile = suggest so that the dc=example entry and ou=people et. al. are created at setup time. Noriko, how hard would it be to change entryrdn to allow for this exception? (In reply to comment #1) > Noriko, how hard would it be to change entryrdn to allow for this exception? I was thinking the other way. If the DB is empty, can we "initialize" it with the root suffix entry with minimum attributes? Created attachment 437292 [details]
0001-621928-Unable-to-enable-replica-rdn-problem-on.patch
Created attachment 437670 [details]
git patch file (389-ds-base-1.2.6)
Description: RUV (nsuniqueid=ffffffff-ffffffff-ffffffff-ffffffff,<suffix>)
needs to be allowed to add to the DB before <suffix> is added. To allow
it, entryrdn prepares the rdn exception list (rdn_exceptions). If the
to-be-added entry (in this case RUV; and currently only RUV is in the
list) is in the list, <suffix> is added to the entryrdn index with the
temporary entry ID 0 (note: not to the primary db file id2entry.db#).
When the suffix is indeed added to the DB, the temporary ID 0 is replaced
with the given real ID.
Files:
ldap/servers/slapd/back-ldbm/dn2entry.c
ldap/servers/slapd/back-ldbm/ldbm_entryrdn.c
Thank you so much for the discussions, testing and reviews, Rich! Pushed to 389-ds-base-1.2.6 git push origin ds126-local:389-ds-base-1.2.6 Counting objects: 15, done. Delta compression using up to 4 threads. Compressing objects: 100% (8/8), done. Writing objects: 100% (8/8), 3.31 KiB, done. Total 8 (delta 6), reused 0 (delta 0) To ssh://git.fedorahosted.org/git/389/ds.git b83e632..bf56b1d ds126-local -> 389-ds-base-1.2.6 Pushed to master, as well. $ git branch ds126-local * master $ git cherry-pick bf56b1d304449b2baf5c0ad628520cb1611b302d $ git push Counting objects: 15, done. Delta compression using up to 4 threads. Compressing objects: 100% (8/8), done. Writing objects: 100% (8/8), 3.32 KiB, done. Total 8 (delta 6), reused 0 (delta 0) To ssh://git.fedorahosted.org/git/389/ds.git b51757c..8fa94a3 master -> master |