Public bug reported: When use curl to test image-show interface with Chinese characters, the service return "500 Internal Server Error",and raise error in the api log .For example,
execute the following command: curl -g -i -X GET http://10.43.203.5:9292/v2/images?name='测试' -H "X-Auth-Token: fe6f6f1688b64d119b89cb8f0e7d3304" 2017-11-21 13:40:42.814 7793 INFO eventlet.wsgi.server [req-179356e7-9aa0-4d23-9f82-6a8d043978b5 - - - - -] Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/eventlet/wsgi.py", line 481, in handle_one_response result = self.application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/oslo_middleware/base.py", line 126, in __call__ response = req.get_response(self.application) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/oslo_middleware/base.py", line 126, in __call__ response = req.get_response(self.application) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/glance/common/wsgi.py", line 602, in __call__ response = req.get_response(self.application) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/osprofiler/web.py", line 108, in __call__ return request.get_response(self.application) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/keystonemiddleware/auth_token/__init__.py", line 467, in __call__ response = req.get_response(self._app) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/glance/common/wsgi.py", line 602, in __call__ response = req.get_response(self.application) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/paste/urlmap.py", line 205, in __call__ return app(environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 144, in __call__ return resp(environ, start_response) File "/usr/lib/python2.7/site-packages/routes/middleware.py", line 131, in __call__ response = self.app(environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 144, in __call__ return resp(environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 144, in __call__ return resp(environ, start_response) TypeError: 'dict' object is not callable 2017-11-21 13:40:42.815 7793 INFO eventlet.wsgi.server [req- 179356e7-9aa0-4d23-9f82-6a8d043978b5 - - - - -] 10.43.203.5 - - [21/Nov/2017 13:40:42] "GET /v2/images?name=测试 HTTP/1.1" 500 139 0.484846 ** Affects: glance Importance: Undecided Assignee: weikeyou (weikeyou) Status: New ** Changed in: glance Assignee: (unassigned) => weikeyou (weikeyou) -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to Glance. https://bugs.launchpad.net/bugs/1733500 Title: image-show interface with Chinese characters return 500 Internal Server Error Status in Glance: New Bug description: When use curl to test image-show interface with Chinese characters, the service return "500 Internal Server Error",and raise error in the api log .For example, execute the following command: curl -g -i -X GET http://10.43.203.5:9292/v2/images?name='测试' -H "X-Auth-Token: fe6f6f1688b64d119b89cb8f0e7d3304" 2017-11-21 13:40:42.814 7793 INFO eventlet.wsgi.server [req-179356e7-9aa0-4d23-9f82-6a8d043978b5 - - - - -] Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/eventlet/wsgi.py", line 481, in handle_one_response result = self.application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/oslo_middleware/base.py", line 126, in __call__ response = req.get_response(self.application) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/oslo_middleware/base.py", line 126, in __call__ response = req.get_response(self.application) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/glance/common/wsgi.py", line 602, in __call__ response = req.get_response(self.application) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/osprofiler/web.py", line 108, in __call__ return request.get_response(self.application) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/keystonemiddleware/auth_token/__init__.py", line 467, in __call__ response = req.get_response(self._app) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__ resp = self.call_func(req, *args, **self.kwargs) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func return self.func(req, *args, **kwargs) File "/usr/lib/python2.7/site-packages/glance/common/wsgi.py", line 602, in __call__ response = req.get_response(self.application) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1317, in send application, catch_exc_info=False) File "/usr/lib/python2.7/site-packages/webob/request.py", line 1281, in call_application app_iter = application(self.environ, start_response) File "/usr/lib/python2.7/site-packages/paste/urlmap.py", line 205, in __call__ return app(environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 144, in __call__ return resp(environ, start_response) File "/usr/lib/python2.7/site-packages/routes/middleware.py", line 131, in __call__ response = self.app(environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 144, in __call__ return resp(environ, start_response) File "/usr/lib/python2.7/site-packages/webob/dec.py", line 144, in __call__ return resp(environ, start_response) TypeError: 'dict' object is not callable 2017-11-21 13:40:42.815 7793 INFO eventlet.wsgi.server [req- 179356e7-9aa0-4d23-9f82-6a8d043978b5 - - - - -] 10.43.203.5 - - [21/Nov/2017 13:40:42] "GET /v2/images?name=测试 HTTP/1.1" 500 139 0.484846 To manage notifications about this bug go to: https://bugs.launchpad.net/glance/+bug/1733500/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

