Bug 1118077

Summary: Improve import logging and abort handling
Product: Red Hat Enterprise Linux 7 Reporter: Noriko Hosoi <nhosoi>
Component: 389-ds-baseAssignee: Noriko Hosoi <nhosoi>
Status: CLOSED ERRATA QA Contact: Viktor Ashirov <vashirov>
Severity: unspecified Docs Contact:
Priority: medium    
Version: 7.0CC: mreynolds, nhosoi, nkinder, rmeggins, vashirov
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 389-ds-base-1.3.3.1-1.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-05 09:36:28 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:

Description Noriko Hosoi 2014-07-10 00:28:58 UTC
This bug is created as a clone of upstream ticket:
https://fedorahosted.org/389/ticket/47756

Heavily nested DIT LDIF files can take a long time when generating numsubordinates and ancestorIDs.  There is no logging during these phases and it can appear that the import is hung.

There are also some internal "loops" in the import code that do not check for "aborts", and can actually hang the server if you attempt to stop it.

Comment 3 Noriko Hosoi 2014-10-21 17:35:25 UTC
Hi Mark, could you provide the steps to verify?
Thanks!

Comment 4 mreynolds 2014-10-21 20:42:38 UTC
Verification steps

Test that a shutdown aborts an online import

[1]  Setup a DS instance using dc=example,dc=com
[2]  Create a 300k entry ldif
[3]  Run ldif2db.pl:

         ldif2db.pl -Z INSTANCE -n userroot -D "cn=directory manager" -w Secret123 -i <LDIF FILE>

[4]  Wait 5 seconds to allow the import to get started
[5]  Stop the DS (this should not timeout or appear to "hang")
[6]  Grep the errors log for "Aborting all Import threads"

Comment 5 Viktor Ashirov 2014-12-11 00:02:45 UTC
$ rpm -qa  | grep 389
389-ds-base-1.3.3.1-9.el7.x86_64
389-ds-base-debuginfo-1.3.3.1-9.el7.x86_64
389-ds-base-libs-1.3.3.1-9.el7.x86_64

I followed verification steps in #c4

$ grep Abort /var/log/dirsrv/slapd-rhel7ds/errors
[11/Dec/2014:00:58:45 +0100] - import userRoot: Aborting all Import threads...

Server didn't timeout or appear to hang. 
Marking as VERIFIED.

Comment 7 errata-xmlrpc 2015-03-05 09:36:28 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://rhn.redhat.com/errata/RHSA-2015-0416.html