yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #13807
[Bug 1276221] Re: Keystone returns HTTP 400 as SQLAlchemy raises None exceptions
It doesn't sound like there's anything to fix in keystone then, if this
is due to dependency version(s) already documented as unsupported.
** Changed in: keystone
Status: Incomplete => Invalid
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Keystone.
https://bugs.launchpad.net/bugs/1276221
Title:
Keystone returns HTTP 400 as SQLAlchemy raises None exceptions
Status in OpenStack Identity (Keystone):
Invalid
Bug description:
With RDO-Icehouse (m2 testday packages) on RHEL-6.5,
negative Tempest identity tests fails as Keystone responds with HTTP 400.
For example test
tempest.api.identity.admin.v3.test_projects.ProjectsTestJSON.test_project_create_duplicate
gives following output:
> Request: POST http://192.168.1.16:35357/v3/projects
> Request Headers: {'Content-Type': 'application/json', 'Accept': 'application/json', 'X-Auth-Token': '<Token omitted>'}
> Request Body: {"project": {"enabled": true, "description": null, "name": "project-dup--1737299968", "domain_id": "default"}}
> Response Status: 400
> Response Headers: {'content-length': '143', 'date': 'Tue, 04 Feb 2014 07:47:53 GMT', 'content-type': 'application/json', 'vary': 'X-Auth-Token', 'connection': 'close'}
> Response Body: {"error": {"message": "exceptions must be old-style classes or derived from BaseException, not NoneType", "code": 400, "title": "Bad Request"}}
In keystone.log the exception can be seen as
> keystone.common.wsgi Traceback (most recent call last):
> keystone.common.wsgi File "/usr/lib/python2.6/site-packages/keystone/common/wsgi.py", line 214, in __call__
> keystone.common.wsgi result = method(context, **params)
> keystone.common.wsgi File "/usr/lib/python2.6/site-packages/keystone/common/controller.py", line 174, in inner
> keystone.common.wsgi return f(self, context, *args, **kwargs)
> keystone.common.wsgi File "/usr/lib/python2.6/site-packages/keystone/assignment/controllers.py", line 390, in create_project
> keystone.common.wsgi ref = self.assignment_api.create_project(ref['id'], ref)
> keystone.common.wsgi File "/usr/lib/python2.6/site-packages/keystone/notifications.py", line 53, in wrapper
> keystone.common.wsgi result = f(*args, **kwargs)
> keystone.common.wsgi File "/usr/lib/python2.6/site-packages/keystone/assignment/core.py", line 72, in create_project
> keystone.common.wsgi ret = self.driver.create_project(tenant_id, tenant)
> keystone.common.wsgi File "/usr/lib/python2.6/site-packages/keystone/common/sql/core.py", line 165, in wrapper
> keystone.common.wsgi return method(*args, **kwargs)
> keystone.common.wsgi File "/usr/lib/python2.6/site-packages/keystone/assignment/backends/sql.py", line 411, in create_project
> keystone.common.wsgi return tenant_ref.to_dict()
> keystone.common.wsgi File "/usr/lib64/python2.6/contextlib.py", line 23, in __exit__
> keystone.common.wsgi self.gen.next()
> keystone.common.wsgi File "/usr/lib/python2.6/site-packages/keystone/common/sql/core.py", line 156, in transaction
> keystone.common.wsgi yield session
> keystone.common.wsgi File "/usr/lib64/python2.6/site-packages/SQLAlchemy-0.7.8-py2.6-linux-x86_64.egg/sqlalchemy/orm/session.py", line 405, in __exit__
> keystone.common.wsgi raise
> keystone.common.wsgi TypeError: exceptions must be old-style classes or derived from BaseException, not NoneType
> keystone.common.wsgi
Deployed with packstack, no related configuration changes.
Installed packages:
> openstack-keystone.noarch 2014.1-0.3.b2.el6
> python-keystone.noarch 2014.1-0.3.b2.el6
> python-keystoneclient.noarch 1:0.4.1-3.el6
> python-sqlalchemy0.7.x86_64 0.7.8-1.el6
> python-eventlet.noarch 0.9.17-2.el6
> python-libs.x86_64 2.6.6-51.el6
This is NOT reproducible on Fedora20 with versions:
> openstack-keystone.noarch 2014.1-0.3.b2.fc21
> python-keystone.noarch 2014.1-0.3.b2.fc21
> python-keystoneclient.noarch 1:0.4.1-3.fc20
> python-sqlalchemy.x86_64 0.8.4-1.fc20
> python-eventlet.noarch 0.12.0-2.fc20
> python-libs.x86_64 2.7.5-9.fc20
Neither it happened on Fedora19/20 or RHEL-6.5 with devstack/tempest
master branches.
This seems as related to eventlet/tpool etc issues, here with SQLAlchemy.
For example like https://bitbucket.org/eventlet/eventlet/issue/118/exceptions-are-cleared-during
To manage notifications about this bug go to:
https://bugs.launchpad.net/keystone/+bug/1276221/+subscriptions
References