*** This bug is a duplicate of bug 1440493 *** https://bugs.launchpad.net/bugs/1440493
Public bug reported: keystone.conf: [cache] backend=keystone.cache.memcache_pool memcache_servers=db0.stack:11211 with this settings, keystone makes below error when request token 2015-08-13 00:11:44.489 689 DEBUG keystone.common.cache._memcache_pool [-] Memcached pool 139851635173456, thread 139851778242368: Acquiring connection _debug_logger /opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py:91 2015-08-13 00:11:44.490 689 ERROR keystone.common.wsgi [-] super(type, obj): obj must be an instance or subtype of type 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi Traceback (most recent call last): 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/wsgi.py", line 223, in __call__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi result = method(context, **params) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 100, in authenticate 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi context, auth) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 301, in _authenticate_local 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi tenant_id = self._get_project_id_from_auth(auth) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 371, in _get_project_id_from_auth 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi tenant_name, CONF.identity.default_domain_id) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 1040, in decorate 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi should_cache_fn) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 651, in get_or_create 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi async_creator) as value: 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py", line 158, in __enter__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self._enter() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py", line 91, in _enter 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = value_fn() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 604, in get_value 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = self.backend.get(key) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/backends/memcached.py", line 149, in get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = self.client.get(key) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/backends/memcache_pool.py", line 35, in _run_method 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi with self.client_pool.acquire() as client: 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/pyenv/versions/2.7.9/lib/python2.7/contextlib.py", line 17, in __enter__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self.gen.next() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 97, in acquire 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = self.get(timeout=self._connection_get_timeout) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/eventlet/eventlet/queue.py", line 287, in get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self._get() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 155, in _get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = ConnectionPool._get(self) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 120, in _get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = self._create_connection() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 149, in _create_connection 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return _MemcacheClient(self.urls, **self._arguments) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/memcache.py", line 228, in __init__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi super(Client, self).__init__() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi TypeError: super(type, obj): obj must be an instance or subtype of type 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi when I change with --- a/keystone/common/cache/_memcache_pool.py +++ b/keystone/common/cache/_memcache_pool.py -_MemcacheClient = type('_MemcacheClient', (object,), +memcache.Client = type('memcache.Client', (object,), dict(memcache.Client.__dict__)) _PoolItem = collections.namedtuple('_PoolItem', ['ttl', 'connection']) @@ -146,7 +146,7 @@ class MemcacheClientPool(ConnectionPool): self._hosts_deaduntil = [0] * len(urls) def _create_connection(self): - return _MemcacheClient(self.urls, **self._arguments) + return memcache.Client(self.urls, **self._arguments) def _destroy_connection(self, conn): conn.disconnect_all() It works well ** Affects: keystone Importance: Undecided Status: Invalid ** Description changed: keystone.conf: - [cache] - backend=keystone.cache.memcache_pool - memcache_servers=db0.stack:11211 + [cache] + backend=keystone.cache.memcache_pool + memcache_servers=db0.stack:11211 with this settings, keystone makes below error when request token 2015-08-13 00:11:44.489 689 DEBUG keystone.common.cache._memcache_pool [-] Memcached pool 139851635173456, thread 139851778242368: Acquiring connection _debug_logger /opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py:91 2015-08-13 00:11:44.490 689 ERROR keystone.common.wsgi [-] super(type, obj): obj must be an instance or subtype of type 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi Traceback (most recent call last): 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/wsgi.py", line 223, in __call__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi result = method(context, **params) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 100, in authenticate 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi context, auth) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 301, in _authenticate_local 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi tenant_id = self._get_project_id_from_auth(auth) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 371, in _get_project_id_from_auth 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi tenant_name, CONF.identity.default_domain_id) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 1040, in decorate 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi should_cache_fn) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 651, in get_or_create 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi async_creator) as value: 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py", line 158, in __enter__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self._enter() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py", line 91, in _enter 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = value_fn() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 604, in get_value 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = self.backend.get(key) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/backends/memcached.py", line 149, in get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = self.client.get(key) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/backends/memcache_pool.py", line 35, in _run_method 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi with self.client_pool.acquire() as client: 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/pyenv/versions/2.7.9/lib/python2.7/contextlib.py", line 17, in __enter__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self.gen.next() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 97, in acquire 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = self.get(timeout=self._connection_get_timeout) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/eventlet/eventlet/queue.py", line 287, in get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self._get() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 155, in _get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = ConnectionPool._get(self) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 120, in _get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = self._create_connection() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 149, in _create_connection 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return _MemcacheClient(self.urls, **self._arguments) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/memcache.py", line 228, in __init__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi super(Client, self).__init__() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi TypeError: super(type, obj): obj must be an instance or subtype of type 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi - - when I chane with + when I change with -_MemcacheClient = type('_MemcacheClient', (object,), +memcache.Client = type('memcache.Client', (object,), - dict(memcache.Client.__dict__)) + dict(memcache.Client.__dict__)) - _PoolItem = collections.namedtuple('_PoolItem', ['ttl', 'connection']) + _PoolItem = collections.namedtuple('_PoolItem', ['ttl', 'connection']) @@ -146,7 +146,7 @@ class MemcacheClientPool(ConnectionPool): - self._hosts_deaduntil = [0] * len(urls) + self._hosts_deaduntil = [0] * len(urls) - def _create_connection(self): + def _create_connection(self): - return _MemcacheClient(self.urls, **self._arguments) + return memcache.Client(self.urls, **self._arguments) - def _destroy_connection(self, conn): - conn.disconnect_all() - + def _destroy_connection(self, conn): + conn.disconnect_all() It works well ** Description changed: keystone.conf: [cache] backend=keystone.cache.memcache_pool memcache_servers=db0.stack:11211 with this settings, keystone makes below error when request token 2015-08-13 00:11:44.489 689 DEBUG keystone.common.cache._memcache_pool [-] Memcached pool 139851635173456, thread 139851778242368: Acquiring connection _debug_logger /opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py:91 2015-08-13 00:11:44.490 689 ERROR keystone.common.wsgi [-] super(type, obj): obj must be an instance or subtype of type 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi Traceback (most recent call last): 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/wsgi.py", line 223, in __call__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi result = method(context, **params) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 100, in authenticate 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi context, auth) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 301, in _authenticate_local 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi tenant_id = self._get_project_id_from_auth(auth) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 371, in _get_project_id_from_auth 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi tenant_name, CONF.identity.default_domain_id) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 1040, in decorate 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi should_cache_fn) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 651, in get_or_create 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi async_creator) as value: 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py", line 158, in __enter__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self._enter() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py", line 91, in _enter 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = value_fn() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 604, in get_value 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = self.backend.get(key) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/backends/memcached.py", line 149, in get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = self.client.get(key) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/backends/memcache_pool.py", line 35, in _run_method 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi with self.client_pool.acquire() as client: 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/pyenv/versions/2.7.9/lib/python2.7/contextlib.py", line 17, in __enter__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self.gen.next() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 97, in acquire 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = self.get(timeout=self._connection_get_timeout) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/eventlet/eventlet/queue.py", line 287, in get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self._get() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 155, in _get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = ConnectionPool._get(self) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 120, in _get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = self._create_connection() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 149, in _create_connection 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return _MemcacheClient(self.urls, **self._arguments) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/memcache.py", line 228, in __init__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi super(Client, self).__init__() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi TypeError: super(type, obj): obj must be an instance or subtype of type 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi when I change with + --- a/keystone/common/cache/_memcache_pool.py + +++ b/keystone/common/cache/_memcache_pool.py -_MemcacheClient = type('_MemcacheClient', (object,), +memcache.Client = type('memcache.Client', (object,), dict(memcache.Client.__dict__)) _PoolItem = collections.namedtuple('_PoolItem', ['ttl', 'connection']) @@ -146,7 +146,7 @@ class MemcacheClientPool(ConnectionPool): self._hosts_deaduntil = [0] * len(urls) def _create_connection(self): - return _MemcacheClient(self.urls, **self._arguments) + return memcache.Client(self.urls, **self._arguments) def _destroy_connection(self, conn): conn.disconnect_all() It works well ** Changed in: keystone Status: New => Invalid ** This bug has been marked a duplicate of bug 1440493 Crash with python-memcached==1.5.4 -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to Keystone. https://bugs.launchpad.net/bugs/1484163 Title: cache.backend = keystone.cache.memcache_pool cause error Status in Keystone: Invalid Bug description: keystone.conf: [cache] backend=keystone.cache.memcache_pool memcache_servers=db0.stack:11211 with this settings, keystone makes below error when request token 2015-08-13 00:11:44.489 689 DEBUG keystone.common.cache._memcache_pool [-] Memcached pool 139851635173456, thread 139851778242368: Acquiring connection _debug_logger /opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py:91 2015-08-13 00:11:44.490 689 ERROR keystone.common.wsgi [-] super(type, obj): obj must be an instance or subtype of type 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi Traceback (most recent call last): 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/wsgi.py", line 223, in __call__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi result = method(context, **params) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 100, in authenticate 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi context, auth) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 301, in _authenticate_local 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi tenant_id = self._get_project_id_from_auth(auth) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/token/controllers.py", line 371, in _get_project_id_from_auth 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi tenant_name, CONF.identity.default_domain_id) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 1040, in decorate 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi should_cache_fn) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 651, in get_or_create 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi async_creator) as value: 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py", line 158, in __enter__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self._enter() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/core/dogpile.py", line 91, in _enter 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = value_fn() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/region.py", line 604, in get_value 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = self.backend.get(key) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/dogpile/cache/backends/memcached.py", line 149, in get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi value = self.client.get(key) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/backends/memcache_pool.py", line 35, in _run_method 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi with self.client_pool.acquire() as client: 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/pyenv/versions/2.7.9/lib/python2.7/contextlib.py", line 17, in __enter__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self.gen.next() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 97, in acquire 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = self.get(timeout=self._connection_get_timeout) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/eventlet/eventlet/queue.py", line 287, in get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return self._get() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 155, in _get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = ConnectionPool._get(self) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 120, in _get 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi conn = self._create_connection() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/src/keystone/keystone/common/cache/_memcache_pool.py", line 149, in _create_connection 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi return _MemcacheClient(self.urls, **self._arguments) 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi File "/opt/openstack/lib/python2.7/site-packages/memcache.py", line 228, in __init__ 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi super(Client, self).__init__() 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi TypeError: super(type, obj): obj must be an instance or subtype of type 2015-08-13 00:11:44.490 689 TRACE keystone.common.wsgi when I change with --- a/keystone/common/cache/_memcache_pool.py +++ b/keystone/common/cache/_memcache_pool.py -_MemcacheClient = type('_MemcacheClient', (object,), +memcache.Client = type('memcache.Client', (object,), dict(memcache.Client.__dict__)) _PoolItem = collections.namedtuple('_PoolItem', ['ttl', 'connection']) @@ -146,7 +146,7 @@ class MemcacheClientPool(ConnectionPool): self._hosts_deaduntil = [0] * len(urls) def _create_connection(self): - return _MemcacheClient(self.urls, **self._arguments) + return memcache.Client(self.urls, **self._arguments) def _destroy_connection(self, conn): conn.disconnect_all() It works well To manage notifications about this bug go to: https://bugs.launchpad.net/keystone/+bug/1484163/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp