yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #06232
[Bug 1257496] [NEW] Glance v1: Creating image with bad scheme in location causes 500
Public bug reported:
When creating an image in glance v1 and specifyig the location with a
bad scheme you receive an HTTP 500. In this case 'http+swift" is a bad
scheme.
glance image-create --name bad-location --disk-format=vhd --container-
format=ovf --location="http+swift://bah"
Request returned failure status.
HTTPInternalServerError (HTTP 500)
2013-12-03 21:24:32.009 6312 INFO glance.wsgi.server [402e831a-935d-4e14-b4c8-64653c14263d 1c3848b015f94b70866e
a33fa52945f0 54bc4959075343ff80f460b77e783a49] Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/eventlet/wsgi.py", line 389, in handle_one_response
result = self.application(self.environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
resp = self.call_func(req, *args, **self.kwargs)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
return self.func(req, *args, **kwargs)
File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
response = req.get_response(self.application)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
application, catch_exc_info=False)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
app_iter = application(self.environ, start_response)
File "/opt/stack/python-keystoneclient/keystoneclient/middleware/auth_token.py", line 581, in __call__
return self.app(env, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
resp = self.call_func(req, *args, **self.kwargs)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
return self.func(req, *args, **kwargs)
File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
response = req.get_response(self.application)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
application, catch_exc_info=False)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
app_iter = application(self.environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
resp = self.call_func(req, *args, **self.kwargs)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
return self.func(req, *args, **kwargs)
File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
response = req.get_response(self.application)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
application, catch_exc_info=False)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
app_iter = application(self.environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
resp = self.call_func(req, *args, **self.kwargs)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
return self.func(req, *args, **kwargs)
File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
response = req.get_response(self.application)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
application, catch_exc_info=False)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
app_iter = application(self.environ, start_response)
File "/usr/lib/python2.7/dist-packages/paste/urlmap.py", line 203, in __call__
return app(environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__
return resp(environ, start_response)
File "/usr/lib/python2.7/dist-packages/routes/middleware.py", line 131, in __call__
response = self.app(environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__
return resp(environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
resp = self.call_func(req, *args, **self.kwargs)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
return self.func(req, *args, **kwargs)
File "/opt/stack/glance/glance/common/wsgi.py", line 599, in __call__
request, **action_args)
File "/opt/stack/glance/glance/common/wsgi.py", line 618, in dispatch
return method(*args, **kwargs)
File "/opt/stack/glance/glance/common/utils.py", line 422, in wrapped
return func(self, req, *args, **kwargs)
File "/opt/stack/glance/glance/api/v1/images.py", line 754, in create
image_meta = self._reserve(req, image_meta)
File "/opt/stack/glance/glance/api/v1/images.py", line 488, in _reserve
store = get_store_from_location(location)
File "/opt/stack/glance/glance/store/__init__.py", line 263, in get_store_from_location
loc = location.get_location_from_uri(uri)
File "/opt/stack/glance/glance/store/location.py", line 73, in get_location_from_uri
raise exception.UnknownScheme(scheme=pieces.scheme)
UnknownScheme: Unknown scheme 'http+swift' found in URI
2013-12-03 21:24:32.011 6312 INFO glance.wsgi.server [402e831a-935d-
4e14-b4c8-64653c14263d 1c3848b015f94b70866ea33fa52945f0
54bc4959075343ff80f460b77e783a49] localhost - - [03/Dec/2013 21:24:32]
"POST /v1/images HTTP/1.1" 500 139 0.216952
** Affects: glance
Importance: Low
Status: New
** Description changed:
When creating an image in glance v1 and specifyig the location with a
bad scheme you receive an HTTP 500. In this case 'http+swift" is a bad
scheme.
glance image-create --name bad-location --disk-format=vhd --container-
format=ovf --location="http+swift://bah"
Request returned failure status.
HTTPInternalServerError (HTTP 500)
-
-
-
2013-12-03 21:24:32.009 6312 INFO glance.wsgi.server [402e831a-935d-4e14-b4c8-64653c14263d 1c3848b015f94b70866e
a33fa52945f0 54bc4959075343ff80f460b77e783a49] Traceback (most recent call last):
- File "/usr/local/lib/python2.7/dist-packages/eventlet/wsgi.py", line 389, in handle_one_response
- result = self.application(self.environ, start_response)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
- resp = self.call_func(req, *args, **self.kwargs)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
- return self.func(req, *args, **kwargs)
- File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
- response = req.get_response(self.application)
- File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
- application, catch_exc_info=False)
- File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
- app_iter = application(self.environ, start_response)
- File "/opt/stack/python-keystoneclient/keystoneclient/middleware/auth_token.py", line 581, in __call__
- return self.app(env, start_response)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
- resp = self.call_func(req, *args, **self.kwargs)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
- return self.func(req, *args, **kwargs)
- File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
- response = req.get_response(self.application)
- File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
- application, catch_exc_info=False)
- File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
- app_iter = application(self.environ, start_response)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
- resp = self.call_func(req, *args, **self.kwargs)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
- return self.func(req, *args, **kwargs)
- File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
- response = req.get_response(self.application)
- File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
- application, catch_exc_info=False)
- File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
- app_iter = application(self.environ, start_response)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
- resp = self.call_func(req, *args, **self.kwargs)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
- return self.func(req, *args, **kwargs)
- File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
- response = req.get_response(self.application)
- File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
- application, catch_exc_info=False)
- File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
- app_iter = application(self.environ, start_response)
- File "/usr/lib/python2.7/dist-packages/paste/urlmap.py", line 203, in __call__
- return app(environ, start_response)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__
- return resp(environ, start_response)
- File "/usr/lib/python2.7/dist-packages/routes/middleware.py", line 131, in __call__
- response = self.app(environ, start_response)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__
- return resp(environ, start_response)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
- resp = self.call_func(req, *args, **self.kwargs)
- File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
- return self.func(req, *args, **kwargs)
- File "/opt/stack/glance/glance/common/wsgi.py", line 599, in __call__
- request, **action_args)
- File "/opt/stack/glance/glance/common/wsgi.py", line 618, in dispatch
- return method(*args, **kwargs)
- File "/opt/stack/glance/glance/common/utils.py", line 422, in wrapped
- return func(self, req, *args, **kwargs)
- File "/opt/stack/glance/glance/api/v1/images.py", line 754, in create
- image_meta = self._reserve(req, image_meta)
- File "/opt/stack/glance/glance/api/v1/images.py", line 488, in _reserve
- store = get_store_from_location(location)
- File "/opt/stack/glance/glance/store/__init__.py", line 263, in get_store_from_location
- loc = location.get_location_from_uri(uri)
- File "/opt/stack/glance/glance/store/location.py", line 73, in get_location_from_uri
- raise exception.UnknownScheme(scheme=pieces.scheme)
+ File "/usr/local/lib/python2.7/dist-packages/eventlet/wsgi.py", line 389, in handle_one_response
+ result = self.application(self.environ, start_response)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
+ resp = self.call_func(req, *args, **self.kwargs)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
+ return self.func(req, *args, **kwargs)
+ File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
+ response = req.get_response(self.application)
+ File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
+ application, catch_exc_info=False)
+ File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
+ app_iter = application(self.environ, start_response)
+ File "/opt/stack/python-keystoneclient/keystoneclient/middleware/auth_token.py", line 581, in __call__
+ return self.app(env, start_response)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
+ resp = self.call_func(req, *args, **self.kwargs)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
+ return self.func(req, *args, **kwargs)
+ File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
+ response = req.get_response(self.application)
+ File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
+ application, catch_exc_info=False)
+ File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
+ app_iter = application(self.environ, start_response)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
+ resp = self.call_func(req, *args, **self.kwargs)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
+ return self.func(req, *args, **kwargs)
+ File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
+ response = req.get_response(self.application)
+ File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
+ application, catch_exc_info=False)
+ File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
+ app_iter = application(self.environ, start_response)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
+ resp = self.call_func(req, *args, **self.kwargs)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
+ return self.func(req, *args, **kwargs)
+ File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
+ response = req.get_response(self.application)
+ File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
+ application, catch_exc_info=False)
+ File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
+ app_iter = application(self.environ, start_response)
+ File "/usr/lib/python2.7/dist-packages/paste/urlmap.py", line 203, in __call__
+ return app(environ, start_response)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__
+ return resp(environ, start_response)
+ File "/usr/lib/python2.7/dist-packages/routes/middleware.py", line 131, in __call__
+ response = self.app(environ, start_response)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__
+ return resp(environ, start_response)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
+ resp = self.call_func(req, *args, **self.kwargs)
+ File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
+ return self.func(req, *args, **kwargs)
+ File "/opt/stack/glance/glance/common/wsgi.py", line 599, in __call__
+ request, **action_args)
+ File "/opt/stack/glance/glance/common/wsgi.py", line 618, in dispatch
+ return method(*args, **kwargs)
+ File "/opt/stack/glance/glance/common/utils.py", line 422, in wrapped
+ return func(self, req, *args, **kwargs)
+ File "/opt/stack/glance/glance/api/v1/images.py", line 754, in create
+ image_meta = self._reserve(req, image_meta)
+ File "/opt/stack/glance/glance/api/v1/images.py", line 488, in _reserve
+ store = get_store_from_location(location)
+ File "/opt/stack/glance/glance/store/__init__.py", line 263, in get_store_from_location
+ loc = location.get_location_from_uri(uri)
+ File "/opt/stack/glance/glance/store/location.py", line 73, in get_location_from_uri
+ raise exception.UnknownScheme(scheme=pieces.scheme)
UnknownScheme: Unknown scheme 'http+swift' found in URI
-
- 2013-12-03 21:24:32.011 6312 INFO glance.wsgi.server [402e831a-935d-4e14-b4c8-64653c14263d 1c3848b015f94b70866ea33fa52945f0 54bc4959075343ff80f460b77e783a49] 162.209.79.194 - - [03/Dec/2013 21:24:32] "POST /v1/images HTTP/1.1" 500 139 0.216952
+ 2013-12-03 21:24:32.011 6312 INFO glance.wsgi.server [402e831a-935d-
+ 4e14-b4c8-64653c14263d 1c3848b015f94b70866ea33fa52945f0
+ 54bc4959075343ff80f460b77e783a49] localhost - - [03/Dec/2013 21:24:32]
+ "POST /v1/images HTTP/1.1" 500 139 0.216952
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Glance.
https://bugs.launchpad.net/bugs/1257496
Title:
Glance v1: Creating image with bad scheme in location causes 500
Status in OpenStack Image Registry and Delivery Service (Glance):
New
Bug description:
When creating an image in glance v1 and specifyig the location with a
bad scheme you receive an HTTP 500. In this case 'http+swift" is a bad
scheme.
glance image-create --name bad-location --disk-format=vhd --container-
format=ovf --location="http+swift://bah"
Request returned failure status.
HTTPInternalServerError (HTTP 500)
2013-12-03 21:24:32.009 6312 INFO glance.wsgi.server [402e831a-935d-4e14-b4c8-64653c14263d 1c3848b015f94b70866e
a33fa52945f0 54bc4959075343ff80f460b77e783a49] Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/eventlet/wsgi.py", line 389, in handle_one_response
result = self.application(self.environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
resp = self.call_func(req, *args, **self.kwargs)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
return self.func(req, *args, **kwargs)
File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
response = req.get_response(self.application)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
application, catch_exc_info=False)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
app_iter = application(self.environ, start_response)
File "/opt/stack/python-keystoneclient/keystoneclient/middleware/auth_token.py", line 581, in __call__
return self.app(env, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
resp = self.call_func(req, *args, **self.kwargs)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
return self.func(req, *args, **kwargs)
File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
response = req.get_response(self.application)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
application, catch_exc_info=False)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
app_iter = application(self.environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
resp = self.call_func(req, *args, **self.kwargs)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
return self.func(req, *args, **kwargs)
File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
response = req.get_response(self.application)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
application, catch_exc_info=False)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
app_iter = application(self.environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
resp = self.call_func(req, *args, **self.kwargs)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
return self.func(req, *args, **kwargs)
File "/opt/stack/glance/glance/common/wsgi.py", line 367, in __call__
response = req.get_response(self.application)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1296, in send
application, catch_exc_info=False)
File "/usr/local/lib/python2.7/dist-packages/webob/request.py", line 1260, in call_application
app_iter = application(self.environ, start_response)
File "/usr/lib/python2.7/dist-packages/paste/urlmap.py", line 203, in __call__
return app(environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__
return resp(environ, start_response)
File "/usr/lib/python2.7/dist-packages/routes/middleware.py", line 131, in __call__
response = self.app(environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 144, in __call__
return resp(environ, start_response)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 130, in __call__
resp = self.call_func(req, *args, **self.kwargs)
File "/usr/local/lib/python2.7/dist-packages/webob/dec.py", line 195, in call_func
return self.func(req, *args, **kwargs)
File "/opt/stack/glance/glance/common/wsgi.py", line 599, in __call__
request, **action_args)
File "/opt/stack/glance/glance/common/wsgi.py", line 618, in dispatch
return method(*args, **kwargs)
File "/opt/stack/glance/glance/common/utils.py", line 422, in wrapped
return func(self, req, *args, **kwargs)
File "/opt/stack/glance/glance/api/v1/images.py", line 754, in create
image_meta = self._reserve(req, image_meta)
File "/opt/stack/glance/glance/api/v1/images.py", line 488, in _reserve
store = get_store_from_location(location)
File "/opt/stack/glance/glance/store/__init__.py", line 263, in get_store_from_location
loc = location.get_location_from_uri(uri)
File "/opt/stack/glance/glance/store/location.py", line 73, in get_location_from_uri
raise exception.UnknownScheme(scheme=pieces.scheme)
UnknownScheme: Unknown scheme 'http+swift' found in URI
2013-12-03 21:24:32.011 6312 INFO glance.wsgi.server [402e831a-935d-
4e14-b4c8-64653c14263d 1c3848b015f94b70866ea33fa52945f0
54bc4959075343ff80f460b77e783a49] localhost - - [03/Dec/2013 21:24:32]
"POST /v1/images HTTP/1.1" 500 139 0.216952
To manage notifications about this bug go to:
https://bugs.launchpad.net/glance/+bug/1257496/+subscriptions
Follow ups
References