** Description changed:

  [Impact]
  
- When user id is non UUID unicode (from old release),
+ In Kilo, with ldap integrated, user_id can have non uuid format ( e.g. Gāo )
+ Then after upgrading kilo to mitaka ( in trusty env )
  
- This function emit exception in python 2.7 env
+ Gāo user can't create cinder volume with unicode error.
  
- Because there are str(value)
+ Affected Xenial, UCA Mitaka ( this is modified after i re-testing all )
  
- which means ok in python 3 (unicode)
- not ok in python 2 (non unicode)
- 
- just updated upstream, so i assume that below releases are affected
- 
- Xenial, Artful, Bionic
- Mitaka, Ocata, Pike, Queens
+ Please refer to error code like below [1]
  
  [Test Case]
  
  1. deploy openstack env
  2. source novarc ( as admin )
  3. keystone user-create --name test
  4. openstack user set --password-prompt test
  4. log into keystone node and install mysql-client
  5. connect to mysql with keystone user
  6. do below query
  - set foreign_key_checks = 0;
  - update local_user set user_id='Gāo' where user_id='UUID';
  - update user set id='Gāo' where id='UUID';
  - set foreign_key_checks = 1;
  7. keystone user-role-add --user test --tenant admin --role Admin
  8. source novarc ( as test )
  9. cinder create --name test 1
  
  got unicode error on cinder-api node logs
  
  [Regression Potential]
  This patch make code handles unicode non uuid form user id. Basically this 
has little risk. but cinder-api service need to be restarted.
+ 
+ [Others]
+ 
+ [1] ###########
+ 
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault File 
"/usr/lib/python2.7/dist-packages/taskflow/types/failure.py", line 343, in 
reraise
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault 
six.reraise(*self._exc_info)
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault File 
"/usr/lib/python2.7/dist-packages/taskflow/engines/action_engine/executor.py", 
line 82, in _execute_task
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault result = 
task.execute(**arguments)
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault File 
"/usr/lib/python2.7/dist-packages/cinder/volume/flows/api/create_volume.py", 
line 527, in execute
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault volume = 
objects.Volume(context=context, **volume_properties)
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault File 
"/usr/lib/python2.7/dist-packages/cinder/objects/volume.py", line 180, in 
__init__
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault super(Volume, 
self).__init__(*args, **kwargs)
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault File 
"/usr/lib/python2.7/dist-packages/oslo_versionedobjects/base.py", line 304, in 
__init__
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault setattr(self, 
key, kwargs[key])
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault File 
"/usr/lib/python2.7/dist-packages/oslo_versionedobjects/base.py", line 72, in 
setter
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault field_value = 
field.coerce(self, name, value)
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault File 
"/usr/lib/python2.7/dist-packages/oslo_versionedobjects/fields.py", line 192, 
in coerce
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault return 
self._type.coerce(obj, attr, value)
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault File 
"/usr/lib/python2.7/dist-packages/oslo_versionedobjects/fields.py", line 325, 
in coerce
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault "for further 
details" % value, FutureWarning)
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault File 
"/usr/lib/python2.7/logging/__init__.py", line 1709, in _showwarning
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault s = 
warnings.formatwarning(message, category, filename, lineno, line)
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault File 
"/usr/lib/python2.7/warnings.py", line 38, in formatwarning
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault s = "%s:%s: 
%s: %s\n" % (filename, lineno, category.__name__, message)
+ 2018-03-14 10:58:56.932 2198 ERROR cinder.api.middleware.fault 
UnicodeEncodeError: 'ascii' codec can't encode character u'\xe1' in position 9: 
ordinal not in range(128)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1760918

Title:
  [SRU] Fixing UUID coerce function for unicode non uuid form

To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-archive/+bug/1760918/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to