Bug 986423 - Keystone uses memcached Function not in Current version of python-memcached
Keystone uses memcached Function not in Current version of python-memcached
Product: RDO
Classification: Community
Component: openstack-keystone (Show other bugs)
Unspecified Unspecified
unspecified Severity unspecified
: GA
: Havana
Assigned To: Pádraig Brady
Ami Jeain
Depends On: 1019311
  Show dependency treegraph
Reported: 2013-07-19 14:24 EDT by Adam Young
Modified: 2016-01-04 09:42 EST (History)
14 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1018995 (view as bug list)
Last Closed: 2013-11-13 17:30:39 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

External Trackers
Tracker ID Priority Status Summary Last Updated
Launchpad 1247703 None None None Never

  None (edit)
Description Adam Young 2013-07-19 14:24:35 EDT
Description of problem:
Recent changes to Keystone use the compare and set functions of memcache.  However, the python-memcached package in Fedora 19 and earlier is 1.48, and it does not have this capability.  The latest easy_install package, python_memcached-1.53, does have this functionality.

To reproduce, set the token backend to be memcache in /etc/keysteon/keystone.conf

driver = keystone.token.backends.memcache.Token

restart the server and run
source an approciate user rc file that sets  the env vars:
$OS_AUTH_URL              $OS_PASSWORD              $OS_TENANT_NAME           $OS_USERNAME  

and run 

keystone token-get

Error shows the missing cas function getting the memcache client
Comment 1 Pádraig Brady 2013-08-01 06:24:12 EDT
Are you referring to this Havana review?

As such I'm moving this to rawhide.
Note the global upstream requirements should probably be updated,
then the keystone requirements.
You'll have to get buy in from all distros though (I notice 1.48 elsewhere)
Comment 2 Fedora End Of Life 2013-09-16 10:39:17 EDT
This bug appears to have been reported against 'rawhide' during the Fedora 20 development cycle.
Changing version to '20'.

More information and reason for this action is here:
Comment 3 Alan Pevec 2013-10-09 17:50:04 EDT
Adam, https://review.openstack.org/31585 merged upstream without corresponding version requirement for python-memcached which is the main mechanism to inform distributions about version requirements.

This means memcache backend is broken in Havana on Fedora with distro version of python-memcached, do you see a possible workaround for Fedora openstack-keystone RPM?
If there isn't, this should move to python-memcached, as a request to update.
Comment 4 Alan Pevec 2013-10-15 10:01:10 EDT
After chatting w/ ayoung, there isn't workaround we need python-memchached updated to 1.53.
The question still stands that this should've been expressed as a versioned dependency in upstream's requirements.txt
Comment 5 Adam Young 2013-10-15 14:13:29 EDT
memcached is an optional component, and is not in requirements.txt at all.  It is, however, in the test equivalent.  It should be updated there, but we will not be modifying that for Havana.

There is obviously a problem with how Keystone is doing optional components that this exposes.  We will look into adjusting it for future releases.
Comment 6 Pádraig Brady 2013-11-12 15:46:26 EST
Since F19 and F20 now have 1.53 I'm moving this to RDO component
Comment 7 Pádraig Brady 2013-11-12 15:47:36 EST
It seems that 1.48 is good enough to support this?
But we'll probably upgrade to 1.53 to align with Fedora >= 19
Comment 8 Pádraig Brady 2013-11-13 17:30:39 EST
python-memcached-1.53 now in RDO EL repos

Note You need to log in before you can comment on or make changes to this bug.