Bug 815991 - crash in ldap_initialize with multiple threads
crash in ldap_initialize with multiple threads
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: 389-ds-base (Show other bugs)
6.3
Unspecified Unspecified
unspecified Severity unspecified
: rc
: ---
Assigned To: Rich Megginson
IDM QE LIST
:
: 816037 (view as bug list)
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-04-24 21:01 EDT by Rich Megginson
Modified: 2012-06-20 03:15 EDT (History)
3 users (show)

See Also:
Fixed In Version: 389-ds-base-1.2.10.2-9.el6
Doc Type: Bug Fix
Doc Text:
Cause: Using replication with many replication agreements. Consequence: Server crashes at startup. Fix: ldap_initialize() is not thread-safe. Use a mutex to make sure only one thread at a time calls it. Result: Server does not crash at startup when using replication with many replication agreements.
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-06-20 03:15:31 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Rich Megginson 2012-04-24 21:01:47 EDT
This bug is created as a clone of upstream ticket:
https://fedorahosted.org/389/ticket/348

If multiple threads call ldap_initialize at the same time, the program will crash.  We have seen this in the server and in threaded tools such as ldclt on multiple platforms with openldap 2.4.24-2.4.30.  Threaded programs need to have a mutex around calls to ldap_initialize.

This can be reproduced by increasing the number of threads used by ldclt - you should eventually hit the crash - or by configuring the directory server with many (8) replication agreements, and repeatedly stopping and starting the server.  It will eventually crash at startup.
Comment 2 Rich Megginson 2012-04-30 12:27:05 EDT
*** Bug 816037 has been marked as a duplicate of this bug. ***
Comment 3 Amita Sharma 2012-05-07 02:10:26 EDT
I have tested this with stress testing, No core dumps found hence marking VERIFIED.
Comment 4 Rich Megginson 2012-05-24 19:56:41 EDT
    Technical note added. If any revisions are required, please edit the "Technical Notes" field
    accordingly. All revisions will be proofread by the Engineering Content Services team.
    
    New Contents:
Cause: Using replication with many replication agreements.
Consequence: Server crashes at startup.
Fix: ldap_initialize() is not thread-safe.  Use a mutex to make sure only one thread at a time calls it.
Result: Server does not crash at startup when using replication with many replication agreements.
Comment 5 errata-xmlrpc 2012-06-20 03:15:31 EDT
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/RHSA-2012-0813.html

Note You need to log in before you can comment on or make changes to this bug.