-
Notifications
You must be signed in to change notification settings - Fork 96
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
If an entry RDN is identical to the suffix, then Entryrdn gets broken during a reindex #6417
Comments
…n gets broken during a reindex Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: 389ds#6417 Reviewed by:
…n gets broken during a reindex Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: 389ds#6417 Reviewed by:
…n gets broken during a reindex Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: 389ds#6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: 389ds#6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: 389ds#6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: 389ds#6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: 389ds#6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex (#6418) Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: #6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex (#6418) Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: #6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex (#6418) Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: #6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex (#6418) Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: #6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex (#6418) Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: #6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex (#6418) Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: #6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex (#6418) Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: #6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex (#6418) Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: #6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex (#6418) Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: #6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
…n gets broken during a reindex (#6418) Bug description: During a reindex, the entryrdn index is built at the end from each entry in the suffix. If one entry has a RDN that is identical to the suffix DN, then entryrdn_lookup_dn may erroneously return the suffix DN as the DN of the entry. Fix description: When the lookup entry has no parent (because index is under work) the loop lookup the entry using the RDN. If this RDN matches the suffix DN, then it exits from the loop with the suffix DN. Before exiting it checks that the original lookup entryID is equal to suffix entryID. If it does not match the function fails and then the DN from the entry will be built from id2enty fixes: #6417 Reviewed by: Pierre Rogier, Simon Pichugin (Thanks !!!)
fd62700..99e6707 main |
…ntryrdn gets broken during a reindex Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: 389ds#6417 Reviewed by: Pierre Rogier (reviewed the first fix)
…ntryrdn gets broken during a reindex Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: 389ds#6417 Reviewed by: Pierre Rogier (reviewed the first fix)
A regression was found with the original fix. The regression is detected in 1.4.3 but hidden since 2.3. |
…ntryrdn gets broken during a reindex Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: 389ds#6417 Reviewed by: Pierre Rogier (also reviewed the first fix)
…ntryrdn gets broken during a reindex (#6460) Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: #6417 Reviewed by: Pierre Rogier (also reviewed the first fix)
…ntryrdn gets broken during a reindex (#6460) Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: #6417 Reviewed by: Pierre Rogier (also reviewed the first fix)
…ntryrdn gets broken during a reindex (#6460) Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: #6417 Reviewed by: Pierre Rogier (also reviewed the first fix)
…ntryrdn gets broken during a reindex (#6460) Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: #6417 Reviewed by: Pierre Rogier (also reviewed the first fix)
…ntryrdn gets broken during a reindex (#6460) Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: #6417 Reviewed by: Pierre Rogier (also reviewed the first fix)
…ntryrdn gets broken during a reindex (#6460) Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: #6417 Reviewed by: Pierre Rogier (also reviewed the first fix)
…ntryrdn gets broken during a reindex (#6460) Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: #6417 Reviewed by: Pierre Rogier (also reviewed the first fix)
…ntryrdn gets broken during a reindex (#6460) Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: #6417 Reviewed by: Pierre Rogier (also reviewed the first fix)
…ntryrdn gets broken during a reindex (#6460) Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: #6417 Reviewed by: Pierre Rogier (also reviewed the first fix)
f4553b8..a79887e main |
@tbordaz - you missed 2.6 branch :-) |
…ntryrdn gets broken during a reindex (#6460) Bug description: The primary fix has a flaw as it assumes that the suffix ID is '1'. If the RUV entry is the first entry of the database the server loops indefinitely Fix description: Read the suffix ID from the entryrdn index fixes: #6417 Reviewed by: Pierre Rogier (also reviewed the first fix)
Missed 2.6 branch (thanks @mreynolds389 for the heads up) |
…ntryrdn gets broken during a reindex Bug description: The previous fix had a flaw. In case entryrdn_lookup_dn is called with an undefined suffix the lookup of the suffix trigger a crash. For example it can occur during internal search of an unexisting map (view plugin). The issue exists in all releases but is hidden since 2.3. Fix description: testing the suffix is defined fixes: 389ds#6417 Reviewed by:
Issue Description
At the end of a reindex, entryrdn is rebuilt taking into account each entry under the suffix. The suffix is the first entry to be added. If a later entry has the same rdn than the suffix then entryrdn gets broken.
The bug impacts bdb as well as mdb. It does not impact import but only indexing.
Under mdb entryrdn gets broken silently, but contains invalid data
Under bdb entryrdn gets broken with message like
entryrdn_insert_key - Same DN (dn: <ENTRY_DN>) is already in the entryrdn file with different ID
Package Version and Platform:
Steps to Reproduce
will provide a CI testcase
Expected results
after a reindex entryrdn should not be corrupted
The text was updated successfully, but these errors were encountered: