Bug 1021408

Summary: Attribute gets bind DN value
Product: Red Hat Enterprise Linux 6 Reporter: Nikolai Kondrashov <nikolai.kondrashov>
Component: openldapAssignee: Jan Synacek <jsynacek>
Status: CLOSED ERRATA QA Contact: Patrik Kis <pkis>
Severity: medium Docs Contact:
Priority: medium    
Version: 6.4CC: dspurek, jsynacek, kbanerje, nikolai.kondrashov, pkis
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-10-14 04:58:01 UTC Type: Bug
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: 923680    
Bug Blocks:    
Attachments:
Description Flags
attribute_gets_bind_dn_value.tar.gz
none
ldap.pcap none

Description Nikolai Kondrashov 2013-10-21 09:07:35 UTC
Description of problem:
After performing major addition/deletion of directory entries, subsequent minor additions/deletions result in an entry containing an attribute with the value being the bind DN, whereas that attribute was never set to that value in any of the operations.

Version-Release number of selected component (if applicable):
Server:
openldap-2.4.23-31.el6.x86_64
openldap-clients-2.4.23-31.el6.x86_64
openldap-servers-2.4.23-31.el6.x86_64
Client:
openldap-2.4.23-32.el6_4.1.x86_64
openldap-clients-2.4.23-32.el6_4.1.x86_64

How reproducible:
Always

Steps to Reproduce:
1. Extract the attached "attribute_gets_bind_dn_value.tar.gz".
2. Go to the resulting "attribute_gets_bind_dn_value" directory.
3. Use "config.ldif" and "base.ldif" as the reference
   for the directory server setup.
4. Modify the "stress.sh" file to match local setup.
5. Make sure lua is installed.
6. Add the extracted directory to PATH, for example with
   "export PATH=`pwd`:$PATH" command.
7. Run "stress_make" - it will take 10-15 minutes.
8. Run "stress_check"
9. If need to repeat "stress_check", run "stress_cleanup" then go to step 8.

Actual results:
Output of "stress_check":

    # Iteration 1
    # Iteration 2
    # Corrupted attribute encountered in an entry:
    dn: cn=group10000,ou=Groups,dc=example,dc=com
    objectClass: extensibleObject
    objectClass: groupOfNames
    gidNumber: 10000
    cn: group10000
    member: cn=Manager,dc=example,dc=com


Expected results:
Output of "stress_check":

    # Iteration 1
    # Iteration 2
    # Iteration 3
    # Iteration 4
    # Iteration 5
    # Iteration 6
    # Iteration 7
    # Iteration 8
    # Iteration 9
    # Iteration 10


Additional info:
See the attached ldap.pcap for a traffic capture of a ldapsearch followed by a "stress_check" execution.

The problem didn't reproduce when slapd was executed under Valgrind.

The problem didn't reproduce with openldap-servers-2.4.35-1.el6.x86_64.

Comment 1 Nikolai Kondrashov 2013-10-21 09:08:28 UTC
Created attachment 814477 [details]
attribute_gets_bind_dn_value.tar.gz

Comment 2 Nikolai Kondrashov 2013-10-21 09:08:58 UTC
Created attachment 814478 [details]
ldap.pcap

Comment 4 Nikolai Kondrashov 2013-10-21 09:13:38 UTC
Clarification to the Valgrind note: after "stress_make" was run, a subsequent "stress_check" run failed, slapd was stopped and started under Valgrind, another "stress_check" run didn't fail.

Moreover, after the slapd started under Valgrind was stopped and started again with the regular "service" command, "stress_check" runs stopped failing.

Comment 5 Jan Synacek 2013-11-14 13:04:25 UTC
I managed to reproduce this a few times, but can't anymore...

Comment 8 Nikolai Kondrashov 2014-05-19 12:45:12 UTC
Thank you, Jan. Unfortunately I couldn't reproduce it again in a short span of time, and then it got buried by other matters. Let's hope it got fixed.

Comment 13 errata-xmlrpc 2014-10-14 04:58:01 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2014-1426.html