← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1390484] Re: Missing "s" in keystone configuration document.

 

** Changed in: keystone
       Status: Fix Committed => Fix Released

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

Title:
  Missing "s" in keystone configuration document.

Status in OpenStack Identity (Keystone):
  Fix Released

Bug description:

  The keystone doc
  http://docs.openstack.org/developer/keystone/configuration.html#token-
  persistence-driver, in "Token Persistence Driver", has a mistype in
  the red warning box:

  ```
  keystone.token.persistence.backend.memcache_pool.Token
  keystone.token.persistence.backend.memcache.Token
  ```

  They should have been

  ```
  keystone.token.persistence.backends.memcache_pool.Token
  keystone.token.persistence.backends.memcache.Token
  ```

  It is the missing "s". You can ctrl+f in this document, with or
  without "s". You will find the mismatch.

  ------------------------

  If you fill /etc/keystone.conf with the missing "s"
  keystone.token.persistence.backend.memcache_pool.Token (as I did)

  ```
  ...
  [token]
  provider = keystone.token.providers.uuid.Provider
  driver = keystone.token.persistence.backend.memcache_pool.Token
  ...
  ```

  The command below will causes keystone to raise "No module named
  backend.memcache_pool" error (token is faked)

  ```
  $ keystone --debug --os-token 135abcdef --os-endpoint http://127.0.0.1:35357/v2.0/ user-list
  DEBUG:keystoneclient.session:REQ: curl -i -X GET http://127.0.0.1:35357/v2.0/users -H "User-Agent: python-keystoneclient" -H "X-Auth-Token: {SHA1}ce791127cf84307aa59d7a8ba8829f00d5d91570"
  INFO:requests.packages.urllib3.connectionpool:Starting new HTTP connection (1): 127.0.0.1
  DEBUG:requests.packages.urllib3.connectionpool:"GET /v2.0/users HTTP/1.1" 500 143
  DEBUG:keystoneclient.session:RESP:
  DEBUG:keystoneclient.session:Request returned failure status: 500
  An unexpected error prevented the server from fulfilling your request. (HTTP 500)
  ```

  The error raised from keystone service

  ```
  $ keystone-all
  ...
  2014-11-07 13:41:06.676 20275 ERROR keystone.common.wsgi [-] No module named backend.memcache_pool
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi Traceback (most recent call last):
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/keystone/common/wsgi.py", line 430, in __call__
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     response = self.process_request(request)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/keystone/middleware/core.py", line 279, in process_request
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     auth_context = self._build_auth_context(request)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/keystone/middleware/core.py", line 259, in _build_auth_context
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     token_data=self.token_provider_api.validate_token(token_id))
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/keystone/token/provider.py", line 225, in validate_token
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     token = self._validate_token(unique_id)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/dogpile/cache/region.py", line 1013, in decorate
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     should_cache_fn)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/dogpile/cache/region.py", line 640, in get_or_create
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     async_creator) as value:
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/dogpile/core/dogpile.py", line 158, in __enter__
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     return self._enter()
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/dogpile/core/dogpile.py", line 98, in _enter
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     generated = self._enter_create(createdtime)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/dogpile/core/dogpile.py", line 149, in _enter_create
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     created = self.creator()
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/dogpile/cache/region.py", line 612, in gen_value
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     created_value = creator()
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/dogpile/cache/region.py", line 1009, in creator
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     return fn(*arg, **kw)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/keystone/token/provider.py", line 318, in _validate_token
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     token_ref = self._persistence.get_token(token_id)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/keystone/token/provider.py", line 191, in _persistence
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     self._persistence_manager = persistence.PersistenceManager()
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/keystone/common/dependency.py", line 172, in wrapper
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     self.__wrapped_init__(*args, **kwargs)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/keystone/token/persistence/core.py", line 53, in __init__
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     super(PersistenceManager, self).__init__(CONF.token.driver)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/keystone/common/manager.py", line 70, in __init__
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     self.driver = importutils.import_object(driver_name)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/keystone/openstack/common/importutils.py", line 38, in import_object
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     return import_class(import_str)(*args, **kwargs)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi   File "/usr/lib/python2.7/site-packages/keystone/openstack/common/importutils.py", line 27, in import_class
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi     __import__(mod_str)
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi ImportError: No module named backend.memcache_pool
  2014-11-07 13:41:06.676 20275 TRACE keystone.common.wsgi
  ```

  -----------------------

  So after all the keystone doc
  http://docs.openstack.org/developer/keystone/configuration.html#token-
  persistence-driver is missing an "s". But troubleshoot takes hours.

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


References