Note: This bug is displayed in read-only format because the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.

Bug 882923

Summary: Negative cache timeout is not working for proxy provider
Product: Red Hat Enterprise Linux 6 Reporter: Kaushik Banerjee <kbanerje>
Component: sssdAssignee: Jakub Hrozek <jhrozek>
Status: CLOSED ERRATA QA Contact: Kaushik Banerjee <kbanerje>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.4CC: grajaiya, jgalipea, okos, pbrezina
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: sssd-1.9.2-47.el6 Doc Type: Bug Fix
Doc Text:
Cause: When the proxy provider did not succeed in finding the requested user, the result of the search wasn't stored in the negative cache. Consequence: A subsequent request for the same user was not answered by the negative cache, but was rather looked up again from the remote server. This bug had performance impact. Fix: The internal error codes were fixed, allowing the SSSD to store search results that yielded no entries into the negative cache. Result: Subsequent lookups for non-existent entries are answered from the negative cache and by effect are very fast.
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-02-21 09:41:50 UTC Type: Bug
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:    
Bug Blocks: 888457    

Description Kaushik Banerjee 2012-12-03 10:59:05 UTC
Description of problem:
Negative cache timeout is not working for proxy provider

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

How reproducible:
Always

Steps to Reproduce:
1. Setup sssd to connect via proxy provider
[domain/PROXY]
id_provider = proxy
debug_level = 0xFFF0
proxy_lib_name = ldap
proxy_pam_target = sssdproxyldap

2. Lookup a user which doesn't exist
# getent passwd puser1   <== Doesn't return anything as expected

3. Sleep for 5 seconds... And add the user puser1 to ldap server during this time
# sleep 5

4. Lookup the user puser1
# getent passwd puser1
puser1:*:2001:2001:Posix User1:/home/puser1:
  
Actual results:
Step 4 should have failed since 15s is the negative cache timeout interval

Expected results:
negative cache timeout of 15s should work.

Additional info:

Comment 2 Pavel Březina 2012-12-03 15:48:05 UTC
Upstream ticket:
https://fedorahosted.org/sssd/ticket/1685

Comment 4 Kaushik Banerjee 2012-12-13 12:05:28 UTC
Re-opening. The fix seems to work for users, but not for groups.

Tested with sssd-1.9.2-41.el6

User is not returned:
1. Lookup non-existant user:
# getent passwd puser1; sleep 10

2. Add the user to ldap.

3. Lookup the user:
# getent passwd puser1
# 

However, group is returned within 10 seconds
1. Lookup the non-existant group
# getent group Group1; sleep 10

2. Add the group to ldap

3. Lookup the group
# getent group Group1
Group1:*:2001:puser1
#

Comment 6 Kaushik Banerjee 2012-12-28 12:54:58 UTC
Verified in version 1.9.2-59

Report from beaker automation run:
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: [   LOG    ] :: proxy-ldap_017 New LDAP User Added - Negative Cache Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [   PASS   ] :: Expected: Failed to lookup nuser@PROXY
:: [   PASS   ] :: Expected: Failed to lookup nuser@PROXY
:: [   LOG    ] :: Waiting for negative cache to expire - default 15 seconds
:: [   PASS   ] :: New user found after cache expired.
:: [   LOG    ] :: Duration: 17s
:: [   LOG    ] :: Assertions: 3 good, 0 bad
:: [   PASS   ] :: RESULT: proxy-ldap_017 New LDAP User Added - Negative Cache Test

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: [   LOG    ] :: SSSD proxy-ldap test 018 >>> New LDAP Group Added - Cache Test
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: [   PASS   ] :: Expected: Failed to lookup a non-existant group
:: [   PASS   ] :: New group not found yet.
:: [   LOG    ] :: Sleeping for 15 secs... Waiting for negative cache to expire
:: [   PASS   ] :: New group found after cache expired.
:: [   LOG    ] :: Duration: 17s
:: [   LOG    ] :: Assertions: 3 good, 0 bad
:: [   PASS   ] :: RESULT: SSSD proxy-ldap test 018 >>> New LDAP Group Added - Cache Test

Comment 7 errata-xmlrpc 2013-02-21 09:41:50 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-2013-0508.html