Bug 1080972

Summary: 'RevokeTree' object has no attribute 'remove'
Product: [Community] RDO Reporter: James Slagle <jslagle>
Component: openstack-keystoneAssignee: Alan Pevec <apevec>
Status: CLOSED CURRENTRELEASE QA Contact: Ami Jeain <ajeain>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: unspecifiedCC: ayoung, yeylon
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: openstack-keystone-2014.1-0.7.rc1.fc21 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-19 22:52:54 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description James Slagle 2014-03-26 12:07:20 UTC
Trying to use any OpenStack client tool that requires authentication results in following traceback keystone:

[-] 'RevokeTree' object has no attribute 'remove'
Traceback (most recent call last):
   File "/usr/lib/python2.7/site-packages/keystone/common/wsgi.py", line 205, in __call__
     result = method(context, **params)
   File "/usr/lib/python2.7/site-packages/keystone/auth/controllers.py", line 316, in authenticate_for_token
     self.authenticate(context, auth_info, auth_context)
   File "/usr/lib/python2.7/site-packages/keystone/auth/controllers.py", line 416, in authenticate
     auth_context)
   File "/usr/lib/python2.7/site-packages/keystone/auth/plugins/token.py", line 39, in authenticate
     response = self.provider.validate_token(token_id)
   File "/usr/lib/python2.7/site-packages/keystone/token/provider.py", line 118, in validate_token
     self._is_valid_token(token)
   File "/usr/lib/python2.7/site-packages/keystone/token/provider.py", line 227, in _is_valid_token
     self.check_revocation(token)
   File "/usr/lib/python2.7/site-packages/keystone/token/provider.py", line 154, in check_revocation
     return self.check_revocation_v2(token)
   File "/usr/lib/python2.7/site-packages/keystone/token/provider.py", line 130, in check_revocation_v2
     self.revoke_api.check_token(token_values)
   File "/usr/lib/python2.7/site-packages/keystone/contrib/revoke/core.py", line 190, in check_token
     self._cache.synchronize_revoke_map(self.driver)
   File "/usr/lib/python2.7/site-packages/keystone/contrib/revoke/core.py", line 79, in synchronize_revoke_map
     self.revoke_map.remove(e)
 AttributeError: 'RevokeTree' object has no attribute 'remove'

$ rpm -q openstack-keystone
openstack-keystone-2014.1-0.5.b3.fc21.noarch

I assume it's trying to revoke an expired token here. Everything had been working fine for a while. Seems to be triggered as soon as the first token expires.

Upstream Bug: https://bugs.launchpad.net/keystone/+bug/1289935
Is fixed upstream, but not in RDO icehouse package.