Bug 1597530

Summary: Async operations can hang when the server is running nunc-stans [rhel-7.5.z]
Product: Red Hat Enterprise Linux 7 Reporter: Oneata Mircea Teodor <toneata>
Component: 389-ds-baseAssignee: mreynolds
Status: CLOSED ERRATA QA Contact: Viktor Ashirov <vashirov>
Severity: urgent Docs Contact: Marc Muehlfeld <mmuehlfe>
Priority: urgent    
Version: 7.4CC: ekeck, gparente, mreynolds, msauton, nkinder, rmeggins, tbordaz
Target Milestone: rcKeywords: ZStream
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: 389-ds-base-1.3.7.5-25.el7_5 Doc Type: Bug Fix
Doc Text:
The nunc-stans framework used by Directory Server can register only one handler at a time to read the connection. The next attempt to register a handler waits for the first one to complete. Previously, if the first handler has never been scheduled, for example, because of network inactivity, other threads attempting to register their handlers hung. Certain asynchronous operations sometimes hung if several threads wanted to register a handler on the same connection. With this update, Directory Server considers the state of connections. If already a handler is registered, the framework now decides if it should cancel a not dispatched handler or if it force or ignore the new handler. As a result, asynchronous operations in Directory Server no longer hang.
Story Points: ---
Clone Of: 1597384 Environment:
Last Closed: 2018-08-16 14:20:08 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: 1597384    
Bug Blocks:    

Description Oneata Mircea Teodor 2018-07-03 07:22:47 UTC
This bug has been copied from bug #1597384 and has been proposed to be backported to 7.5 z-stream (EUS).

Comment 6 Viktor Ashirov 2018-08-05 23:55:47 UTC
Build tested: 389-ds-base-1.3.7.5-25.el7_5.x86_64

Cmocka unit tests pass:

PASS: test_nuncstans
PASS: test_nuncstans_stress_small
PASS: test_nuncstans_stress_large

No hang was observed during the acceptance testing, marking as VERIFIED, SanityOnly.

Comment 8 errata-xmlrpc 2018-08-16 14:20:08 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.

https://access.redhat.com/errata/RHBA-2018:2454