Bug 1484376

Summary: [RFE] Add a configuration option to SSSD to disable the memory cache
Product: Red Hat Enterprise Linux 7 Reporter: Thorsten Scherf <tscherf>
Component: sssdAssignee: SSSD Maintainers <sssd-maint>
Status: CLOSED ERRATA QA Contact: Amith <apeetham>
Severity: medium Docs Contact:
Priority: medium    
Version: 7.4CC: a.v.miroshnichenko, fidencio, gparente, grajaiya, jhrozek, lslebodn, mkosek, mzidek, pbrezina, salmy, sbose, sgoveas, tscherf
Target Milestone: rcKeywords: FutureFeature
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: sssd-1.16.0-2.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-04-10 17:16:19 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:

Description Thorsten Scherf 2017-08-23 11:55:24 UTC
Description of problem:
The ask here is to add a configuration option to tell the SSSD NSS responder to not create the memory cache when the option is set.

We have seen issues with disk space in environments where sssd is restarted in short intervals. It's clear that disabling the memory cache will have a negative impact on NSS performance, but in some situations it might be helpful to have such an option available.

Setting the "SSS_NSS_USE_MEMCACHE" env variable to "no" does not always help because some services clear their environment before starting the actual process. In this case the env variable is unset and the service is still using the memory cache even though it has been told to not use it. 

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


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 3 Jakub Hrozek 2017-08-31 19:17:30 UTC
Upstream ticket:
https://pagure.io/SSSD/sssd/issue/3496

Comment 9 Jakub Hrozek 2017-10-24 13:21:09 UTC
* master:
 * 1becbb7bec29a3d418d8f19fc52433cf86bcf395                                                                                                                                                                                                    
 * ffe29e570a9e885c2f0061c34bb6be2bbd6ab9e4
 * 878b0d42aca5839fdc1d97a68ce181e280f1ed7b

Comment 11 Amith 2017-12-05 20:48:30 UTC
Verified the bug on SSSD Version : sssd-1.16.0-9.el7.x86_64

Steps followed during verification:

1. Ensure sssd service is running. Check the contents of /var/lib/sss/mc directory.

# ls /var/lib/sss/mc/
group  initgroups  passwd

2. Delete all the files from /var/lib/sss/mc/ and restart sssd service.

3. Upon service restart, you will see that all the files are re-created.

# ls /var/lib/sss/mc/
group  initgroups  passwd

4. Now, add memcache_timeout=0 in NSS section as given below:

[sssd]
config_file_version = 2
services = nss, pam
domains = LDAP

[nss]
filter_groups = root
filter_users = root
memcache_timeout=0

[pam]

[domain/LDAP]
debug_level = 0xFFF0
id_provider = ldap
ldap_uri = ldap://hubcap.lab.eng.pnq.redhat.com
ldap_search_base = dc=example,dc=com

5. Delete all the files from /var/lib/sss/mc/ and restart sssd service.

6. List the contents of /var/lib/sss/mc/, you will notice that dir /var/lib/sss/mc/ is empty, The files are not created since memory cache gets disabled.

# ls /var/lib/sss/mc/

Comment 14 errata-xmlrpc 2018-04-10 17:16:19 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/RHEA-2018:0929