On Thu, 2013-09-12 at 20:06 +0200, Michal Židek wrote: > On 09/12/2013 05:48 PM, Simo Sorce wrote: > > On Thu, 2013-09-12 at 11:23 +0200, Jakub Hrozek wrote: > >> On Wed, Sep 11, 2013 at 05:54:01PM -0400, Simo Sorce wrote: > >>> On Wed, 2013-09-11 at 20:19 +0200, Michal Židek wrote: > >>>> Hello, > >>>> > >>>> I would like to have this option in SSSD for debugging purposes. > It is > >>>> not documented, so it should be invisible for users (but I can > add it to > >>>> man pages as well, if someone thinks it is useful to have it > there). > >>> > >>> This would cause you to have stale mmap cache files on the system, > >>> wouldn't it make more sense to have an environment variable for > the > >>> client libraries instead and have them ignore the mmap cache when > you > >>> want to test something ? > >> > >> This sounds like a good idea. > >> > >>> It could also be documented as it may be a useful workaround > should a > >>> user find a bug that hits the mmap_cache and wants a temporary way > to > >>> avoid it even if with performance penalty for a specific > application. > >>> > >>> Something like SSS_NSS_USE_MEMCACHE=yes/no > >>> > >>> defaulting to yes, if no env var is found. > > Just found out that we have a check for _SSS_MC_SPECIAL in function > sss_nss_mc_get_ctx. It makes the function fail returning the EPERM > errno. I do not know what was the purpose of this variable, but it is > exactly what we need. > > Maybe we should just rename this variable, because it is not cleat > from > first glance, what it really does (see attached patch).
Uhmmm I forgot why I added it, I guess for testing :) > >> > >> If I can speak for Michal -- we discussed that it might be nice to > be able > >> to temporarily disable the memcache somehow, but if there was a > documented > >> way, hitting memcache problems would simply disable it and don't > even > >> report a bug. Kind of like users switching SELinux to Permissive. > > > > Their choice. > > I think it is more valuable to have the option than not for fear of > > people not reporting bugs. > > > > Ok. I added the man page change in the second patch. > > > Simo. > > > > Patches are attached. > > Thanks > Michal > > > > > > > > differences > between files > attachment > (0001-Rename-_SSS_MC_SPECIAL.patch) > > From 595c9892ad2079276855519e1fac086b9d52f685 Mon Sep 17 00:00:00 2001 > From: Michal Zidek <[email protected]> > Date: Thu, 12 Sep 2013 19:45:39 +0200 > Subject: [PATCH 1/2] Rename _SSS_MC_SPECIAL > > If the environment variable _SSS_MC_SPECIAL is set to "NO", the > mmap cache is skipped in the client code. The name is not very > descriptive. This patch renames the variable to SSS_NSS_USE_MEMCACHE. > --- > src/sss_client/nss_mc_common.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/src/sss_client/nss_mc_common.c > b/src/sss_client/nss_mc_common.c > index 5d36c47..a0a70ab 100644 > --- a/src/sss_client/nss_mc_common.c > +++ b/src/sss_client/nss_mc_common.c > @@ -108,8 +108,8 @@ errno_t sss_nss_mc_get_ctx(const char *name, > struct sss_cli_mc_ctx *ctx) > char *envval; > int ret; > > - envval = getenv("_SSS_MC_SPECIAL"); > - if (envval && strcmp(envval, "NO") == 0) { > + envval = getenv("SSS_NSS_USE_MEMCACHE"); > + if (envval && strcasecmp(envval, "NO") == 0) { > return EPERM; > } > > -- > 1.7.11.2 ACK > > > > > > > > differences > between files > attachment > (0002-man-sssd-Add-note-about-SSS_NSS_USE_MEMCACHE.patch) > > From f7d07757b00eec75716ae7b43403f206d81466b6 Mon Sep 17 00:00:00 2001 > From: Michal Zidek <[email protected]> > Date: Thu, 12 Sep 2013 19:51:55 +0200 > Subject: [PATCH 2/2] man sssd: Add note about SSS_NSS_USE_MEMCACHE > > --- > src/man/sssd.8.xml | 8 ++++++++ > 1 file changed, 8 insertions(+) > > diff --git a/src/man/sssd.8.xml b/src/man/sssd.8.xml > index 0aba418..3a0fc01 100644 > --- a/src/man/sssd.8.xml > +++ b/src/man/sssd.8.xml > @@ -187,6 +187,14 @@ > </variablelist> > </refsect1> > > + <refsect1 id='notes'> > + <title>NOTES</title> > + <para> > + If the environment variable SSS_NSS_USE_MEMCACHE is set > to "NO", > + the client applications will not use the fast in memory drop 'the' --^^^^ in front of client otherwise ACK > cache. > + </para> > + </refsect1> > + > <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" > href="include/seealso.xml" /> > > </refentry> > -- > 1.7.11.2 -- Simo Sorce * Red Hat, Inc * New York _______________________________________________ sssd-devel mailing list [email protected] https://lists.fedorahosted.org/mailman/listinfo/sssd-devel
