** No longer affects: keystone/liberty ** Changed in: keystone/kilo 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/1440493 Title: Crash with python-memcached==1.5.4 Status in OpenStack Identity (Keystone): Fix Committed Status in Keystone kilo series: Fix Released Status in OpenStack Identity (Keystone) Middleware: New Bug description: There's some magic going on at line: https://github.com/openstack/keystone/blob/2014.2.2/keystone/common/cache/_memcache_pool.py#L46 This magic is broken due to the fact that python-memcached added a super(...) initalization at https://github.com/linsomniac/python-memcached/blob/master/memcache.py#L218 https://github.com/linsomniac/python-memcached/commit/45403325e0249ff0f61d6ae449a7daeeb7e852e5 Due to this change, keystone can no longer work with the latest python-memcached version: Traceback (most recent call last): File ""keystone/common/wsgi.py", line 223, in __call__ result = method(context, **params) File ""keystone/identity/controllers.py", line 76, in create_user self.assignment_api.get_project(default_project_id) File ""dogpile/cache/region.py", line 1040, in decorate should_cache_fn) File ""dogpile/cache/region.py", line 651, in get_or_create async_creator) as value: File ""dogpile/core/dogpile.py", line 158, in __enter__ return self._enter() File ""dogpile/core/dogpile.py", line 91, in _enter value = value_fn() File ""dogpile/cache/region.py", line 604, in get_value value = self.backend.get(key) File ""dogpile/cache/backends/memcached.py", line 149, in get value = self.client.get(key) File ""keystone/common/cache/backends/memcache_pool.py", line 35, in _run_method with self.client_pool.acquire() as client: File "/usr/lib/python2.7/contextlib.py", line 17, in __enter__ return self.gen.next() File ""keystone/common/cache/_memcache_pool.py", line 97, in acquire conn = self.get(timeout=self._connection_get_timeout) File ""eventlet/queue.py", line 293, in get return self._get() File ""keystone/common/cache/_memcache_pool.py", line 155, in _get conn = ConnectionPool._get(self) File ""keystone/common/cache/_memcache_pool.py", line 120, in _get conn = self._create_connection() File ""keystone/common/cache/_memcache_pool.py", line 149, in _create_connection return _MemcacheClient(self.urls, **self._arguments) File ""memcache.py", line 228, in __init__ super(Client, self).__init__() TypeError: super(type, obj): obj must be an instance or subtype of type To manage notifications about this bug go to: https://bugs.launchpad.net/keystone/+bug/1440493/+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