Image deletion from Horizon failed when browser language setting is Japanese

Solution Unverified - Updated -

Environment

  • Red Hat Open Stack 7
  • python-django-horizon

Issue

  • When my browser language setting is Japanese(horizon dashboard --> settings --> Language --> Ja) , 'Delete Image' Horizon operation failed, but the image was deleted actually.
2015-10-13 17:26:01,704 17287 ERROR django.request Internal Server Error: /dashboard/project/images/
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 132, in get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 36, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 52, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 36, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/decorators.py", line 84, in dec
    return view_func(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/django/views/generic/base.py", line 71, in view
    return self.dispatch(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/django/views/generic/base.py", line 89, in dispatch
    return handler(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/tables/views.py", line 223, in post
    return self.get(request, *args, **kwargs)
  File "/usr/lib/python2.7/site-packages/horizon/tables/views.py", line 159, in get
    handled = self.construct_tables()
  File "/usr/lib/python2.7/site-packages/horizon/tables/views.py", line 150, in construct_tables
    handled = self.handle_table(table)
  File "/usr/lib/python2.7/site-packages/horizon/tables/views.py", line 125, in handle_table
    handled = self._tables[name].maybe_handle()
  File "/usr/lib/python2.7/site-packages/horizon/tables/base.py", line 1640, in maybe_handle
    return self.take_action(action_name, obj_id)
  File "/usr/lib/python2.7/site-packages/horizon/tables/base.py", line 1482, in take_action
    response = action.multiple(self, self.request, obj_ids)
  File "/usr/lib/python2.7/site-packages/horizon/tables/actions.py", line 302, in multiple
    return self.handle(data_table, request, object_ids)
  File "/usr/lib/python2.7/site-packages/horizon/tables/actions.py", line 827, in handle
    exceptions.handle(request, ignore=ignore)
  File "/usr/lib/python2.7/site-packages/horizon/exceptions.py", line 364, in handle
    six.reraise(exc_type, exc_value, exc_traceback)
  File "/usr/lib/python2.7/site-packages/horizon/tables/actions.py", line 817, in handle
    (self._get_action_name(past=True), datum_display))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe3 in position 0: ordinal not in range(128)
  • When my browser language setting is English, 'Delete Image' Horizon operation succeeded.
  • Image create/delete via glance/openstack client work without problems.

Resolution

- Update: /usr/lib/python2.7/site-packages/horizon/tables/actions.py

806                 LOG.info(u'Permission denied to %s: "%s"' %   <==

[...]
816                 LOG.info(u'%s: "%s"' % <==
817                          (self._get_action_name(past=True), datum_display))
_______

- Restart  "httpd" service.

NOTE: Please take backup of file before updating it. If you have any confusion then please contact Red Hat Support.

Root Cause

  • This is a known issue being worked upon via bugzilla

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.