← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1418678] Re: Most of the keystone calls generate exception in dogpile when caching is disabled

 

I've dug into this, the overhead is likely minimal. In python the
raise/catch is low overhead and we're already decorating the functions.
I've been staring at the fix and to be honest, it makes the code much
less maintainable.

I'm going to go ahead and close this bug out as Won't Fix, and we can
revisit if we really need to in the future.

** Changed in: keystone
       Status: Triaged => Won't Fix

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Keystone.
https://bugs.launchpad.net/bugs/1418678

Title:
  Most of the keystone calls generate exception in dogpile when caching
  is disabled

Status in OpenStack Identity (Keystone):
  Won't Fix

Bug description:
  Eventhough dogpile caching is disabled,  most of the calls generate
  the  following three lines

  2015-02-03 15:17:13.041 30043 DEBUG dogpile.core.dogpile [-] NeedRegenerationException _enter /opt/stack/venvs/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py:94
  2015-02-03 15:17:13.041 30043 DEBUG dogpile.core.dogpile [-] no value, waiting for create lock _enter_create /opt/stack/venvs/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py:127
  2015-02-03 15:17:13.041 30043 DEBUG dogpile.core.dogpile [-] value creation lock <dogpile.cache.region._LockWrapper object at 0x7f852d8fd650> acquired _enter_create /opt/stack/venvs/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py:131
  2015-02-03 15:17:13.042 30043 DEBUG dogpile.core.dogpile [-] Calling creation function _enter_create /opt/stack/venvs/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py:148
  2015-02-03 15:17:13.048 30043 DEBUG dogpile.core.dogpile [-] Released creation lock _enter_create /opt/stack/venvs/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py:154

  
  Worrying aspect in this log is "NeedRegenerationException"

  Related code fragment from doppile is  ---
   def _enter(self):
          value_fn = self.value_and_created_fn

          try:
              value = value_fn()
              value, createdtime = value 
          except NeedRegenerationException:
              log.debug("NeedRegenerationException")
              value = NOT_REGENERATED
              createdtime = -1

  This is obvious exception , it is throwing error  since caching is
  disabled and there is no key.

  Is there a way to bypass  this code when caching is disabled? This can
  very well be a performance problem as this exception is generated for
  almost every call .

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


References