Bug 730436

Summary: use slapi_rwlock instead of NSPR PR_RWLock directly
Product: Red Hat Enterprise Linux 6 Reporter: Dmitri Pal <dpal>
Component: ipaAssignee: Rob Crittenden <rcritten>
Status: CLOSED ERRATA QA Contact: Chandrasekar Kannan <ckannan>
Severity: unspecified Docs Contact:
Priority: high    
Version: 6.1CC: abokovoy, benl, jgalipea, mgregg, mkosek, nsoman, rcritten, rmeggins, ssorce
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ipa-2.1.1-1.el6 Doc Type: Bug Fix
Doc Text:
Cause: Under some rare circumstances certain operations may cause 389-ds to crash or not function properly. Consequence: 389-ds may not be available. Fix: NSPR read/write locks used by 389-ds are not re-entrant. The use of these locks were replaced with POSIX thread read-write locks instead in the IPA 389-ds plugins. Result: 389 should not crash due to re-entrant locks.
Story Points: ---
Clone Of: 730395 Environment:
Last Closed: 2011-12-06 18:29:49 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: 730387, 730395, 743979    
Bug Blocks:    

Description Dmitri Pal 2011-08-12 22:31:37 UTC
+++ This bug was initially created as a clone of Bug #730395 +++

NSPR PR_RWLocks are not re-entrant.  389 is refactoring its code to provide and use slapi_rwlocks instead.  All freeipa plugins should be refactored to use the slapi_rwlock interface when it is available.

Comment 2 Dmitri Pal 2011-08-15 14:51:18 UTC
https://fedorahosted.org/freeipa/ticket/1635

Comment 5 Rob Crittenden 2011-11-01 13:17:44 UTC
    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: Under some rare circumstances certain operations may cause 389-ds to crash or not function properly.
Consequence: 389-ds may not be available.
Fix: NSPR read/write locks used by 389-ds are not re-entrant. The use of these locks were replaced with POSIX thread read-write locks instead in the IPA 389-ds plugins.
Result: 389 should not crash due to re-entrant locks.

Comment 6 Namita Soman 2011-11-08 13:08:02 UTC
Looks like this happens "Under some rare circumstances". Please suggest what is the good way to verify this bug

Comment 7 Rob Crittenden 2011-11-08 13:27:22 UTC
This may need to be validated by code review and general acceptance that the server is operating as before.

Comment 8 Michael Gregg 2011-11-08 19:03:45 UTC
verified:SanityOnly

This bug did not seem to pop up in any of our acceptance tests in the past 3 months.

Verified against:
bind-dyndb-ldap-0.2.0-7.el6.x86_64
ipa-server-2.1.3-8.el6.x86_64

Comment 9 errata-xmlrpc 2011-12-06 18:29:49 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/RHSA-2011-1533.html