← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1567413] Re: Keystone fetches data from Memcache even if caching is explicitly turned off

 

Reviewed:  https://review.openstack.org/304688
Committed: https://git.openstack.org/cgit/openstack/oslo.cache/commit/?id=ea191cacb14818989564ffe1f3727f28be3c3a21
Submitter: Jenkins
Branch:    master

commit ea191cacb14818989564ffe1f3727f28be3c3a21
Author: Morgan Fainberg <morgan.fainberg@xxxxxxxxx>
Date:   Tue Apr 12 08:09:17 2016 -0700

    If caching is globally disabled force dogpile to use the null backend
    
    Due to the way caching is disabled the SHOULD_CACHE_FN() is used
    to determine if new values are stored in the cache backend, and is
    only called when the regeneration is required. If dogpile is
    configured to connect to a memcache, redis, etc to store data
    it is possible with caching disabled to still pull values from
    the cache (SHOULD_CACHE_FN has no bearing on reads).
    
    The issue described only impacts the use of the memoization
    decorator.
    
    This change forces dogpile to use the null backend if caching is
    globally disabled to ensure no data is read from the external
    cache. This will not affect subsystem disabling of cache.
    
    Even with cache disabled but reads coming from the external cache,
    there stale data is not a concern as invalidates will still be
    processed and the data from the backend will eventually timeout
    in most cases.
    
    Change-Id: I845b6cc18faa2be516676eeacc574473ca84c995
    Closes-Bug: #1567413


** Changed in: oslo.cache
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Identity (keystone).
https://bugs.launchpad.net/bugs/1567413

Title:
  Keystone fetches data from Memcache even if caching is explicitly
  turned off

Status in OpenStack Identity (keystone):
  Invalid
Status in oslo.cache:
  Fix Released

Bug description:
  == Abstract ==

  I'm profiling Keystone using OSprofiler tool and the appropriate
  Keystone+OSprofiler integration changes -
  https://review.openstack.org/#/q/status:open+project:openstack/keystone+branch:master+topic
  :osprofiler-support-in-keystone - currently on review. The idea was to
  analyse how does Keystone use DB/Cache layers.

  == Expected vs Observed==

  I'm turning off cache via setting

  [cache]
  enabled = False

  I'm expecting all data to be fetched from DB in this case, but I still
  see gets from Memcache. I mean, *real* gets, not just tries to grab
  values, but real operations happening with values got from memcache
  here
  https://bitbucket.org/zzzeek/dogpile.cache/src/c6913eb143b24b4a886124ff0da5c935ea34e3ac/dogpile/cache/region.py?at=master&fileviewer
  =file-view-default#region.py-617

  Adding OSprofiler HTML report from token issue API call.

To manage notifications about this bug go to:
https://bugs.launchpad.net/keystone/+bug/1567413/+subscriptions


References