yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #66118
[Bug 1521193] Re: Filters does not support non-ASCII value
Reviewed: https://review.openstack.org/418217
Committed: https://git.openstack.org/cgit/openstack/glance/commit/?id=8c3148b7e9e41b3f85169f4804975cc5b92061d7
Submitter: Jenkins
Branch: master
commit 8c3148b7e9e41b3f85169f4804975cc5b92061d7
Author: bhagyashris <bhagyashri.shewale@xxxxxxxxxxx>
Date: Thu May 5 14:00:06 2016 +0000
Fix filter doesn't support non-ascii characters
When non-ascii characters is passed as filter parameter to "image-list"
and "md-namespace-list" APIs then it returns HTTP 500 if glance service
is running using Python2. This is because query parameters passed to
the urlparse.urlencode method raises UnicodeEncodeError for non-ascii
characters.
Overridden params property of webob.request.BaseRequest in wsgi layer
Request class to avoid encoding of request params at several places in
case of Py2. Added a new class attribute 'encoded_params' which is
initialized to encoded params dict when params property is called for
the first time and in the subsequent calls this attribute is returned
without requiring you to worry whether the params value are encoded
or not.
Closes-Bug: #1521193
Change-Id: If4497d42820aa4b8070666d2a1a4413411557f12
** Changed in: glance
Status: In Progress => Fix Released
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to Glance.
https://bugs.launchpad.net/bugs/1521193
Title:
Filters does not support non-ASCII value
Status in Glance:
Fix Released
Status in Glance Client:
Invalid
Bug description:
Glanceclient does not encode value "--property-filter" that call 500
error on wsgi server
STEPS TO REPRODUCE:
glance --debug image-list --property-filter name=Привет
ACTUAL RESULT:
curl -g -i -X GET -H 'Accept-Encoding: gzip, deflate' -H 'Accept: */*' -H 'User-Agent: python-glanceclient' -H 'Connection: keep-alive' -H 'X-Auth-Token: {SHA1}e2f09d062a40c2c9dd36331412527ca29c01f2c7' -H 'Content-Type: application/octet-stream' http://172.18.66.81:9292/v2/images?limit=2000&name=%D0%9F%D1%80%D0%B8%D0%B2%D0%B5%D1%82&sort_key=name&sort_dir=asc
Request returned failure status 500.
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/glanceclient/shell.py", line 709, in main
args.func(client, args)
File "/usr/local/lib/python2.7/dist-packages/glanceclient/v2/shell.py", line 182, in do_image_list
utils.print_list(images, columns)
File "/usr/local/lib/python2.7/dist-packages/glanceclient/common/utils.py", line 183, in print_list
for o in objs:
File "/usr/local/lib/python2.7/dist-packages/glanceclient/v2/images.py", line 176, in list
for image in paginate(url, page_size, limit):
File "/usr/local/lib/python2.7/dist-packages/glanceclient/v2/images.py", line 108, in paginate
resp, body = self.http_client.get(next_url)
File "/usr/local/lib/python2.7/dist-packages/glanceclient/common/http.py", line 280, in get
return self._request('GET', url, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/glanceclient/common/http.py", line 272, in _request
resp, body_iter = self._handle_response(resp)
File "/usr/local/lib/python2.7/dist-packages/glanceclient/common/http.py", line 93, in _handle_response
raise exc.from_response(resp, resp.content)
HTTPInternalServerError: HTTPInternalServerError (HTTP 500)
HTTPInternalServerError (HTTP 500)
logs on glance-server:
http://paste.openstack.org/show/480358/
To manage notifications about this bug go to:
https://bugs.launchpad.net/glance/+bug/1521193/+subscriptions