yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #09292
[Bug 1276221] [NEW] Keystone returns HTTP 400 as SQLAlchemy raises None exceptions
Public bug reported:
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
** Affects: keystone
Importance: Undecided
Status: New
--
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):
New
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
Follow ups
References