Bug 152467 - nss_db doesn't set errno to ENOENT when returning NSS_STATUS_NOTFOUND
nss_db doesn't set errno to ENOENT when returning NSS_STATUS_NOTFOUND
Product: Red Hat Enterprise Linux 2.1
Classification: Red Hat
Component: nss_db (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Nalin Dahyabhai
Brian Brock
Depends On:
Blocks: 143573
  Show dependency treegraph
Reported: 2005-03-29 14:12 EST by David Lehman
Modified: 2007-11-30 17:06 EST (History)
1 user (show)

See Also:
Fixed In Version: RHBA-2005-483
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-03-21 09:28:21 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
set errno when an entry is not found (445 bytes, patch)
2005-03-29 14:12 EST, David Lehman
no flags Details | Diff

  None (edit)
Description David Lehman 2005-03-29 14:12:29 EST
Created attachment 112426 [details]
set errno when an entry is not found
Comment 1 David Lehman 2005-03-29 14:12:29 EST
Description of problem:
nss_db is inordinately slow when entries are not found. I patched it to set
errnop to ENOENT when returning NSS_STATUS_NOTFOUND and it fixed the problem
according to the customer. 

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1. create a very large passwd db (> 10k entries)
2. edit nsswitch.conf to check db first
3. search for an entry that's in files, not db (using id or getent)
Actual results:
takes 3 minutes to return

Expected results:
much faster result

Additional info:
I was unable to reproduce this in the first place, but the customer who reported
it says the patched nss_db which sets errnop fixes it.
Comment 13 Eric Hagberg 2005-05-02 12:59:38 EDT
Closed as "notabug"?

It's a bug under RHEL2.1, even if it isn't a problem in future releases
(apparently due to glibc updates)... unless you've got a glibc update that fixes

Comment 14 David Lehman 2005-05-03 00:16:56 EDT
I suspect this is also an issue in RHEL3. I am offsite and cannot verify that
right now.

I'm going to reopen this; if it was intentionally closed please provide an
explanation. My guess is it was a mis-click or similar.

Now that the confusion about the cause of (and fix for) this problem has been
cleared up we need to push like hell to get it into U7 or it's down the drain
for good.
Comment 15 Eric Hagberg 2005-05-03 07:16:23 EDT
I personally haven't seen this problem at all under RHEL3, but of course, glibc
there is a completely different beast. I suspect the problem isn't in RHEL3
because of changes/fixes in glibc that've never made it back to the glibc in RHEL2.

Didn't Update 7 already come out last week?
Comment 16 Eric Hagberg 2005-05-12 15:13:56 EDT
Comment 23 Red Hat Bugzilla 2006-03-21 09:28:21 EST
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.


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