Return BadRequest for invalid unicode names (continued)

Follow-up to "Return BadRequest for invalid Unicode names",
we missed a couple of operations here:
  type-key set
  quota-class-update
  qos-create

Related-Bug: #1531400

Change-Id: Id966b74dce87acb15ede9cb4c02ae0f74d59b08c
This commit is contained in:
Eric Harney 2016-02-29 15:22:07 -05:00
parent f99ef1a14a
commit 9a487f3e53
2 changed files with 10 additions and 0 deletions

View File

@ -689,6 +689,7 @@ def _quota_class_get_all_by_resource(context, resource, session):
return result
@handle_db_data_error
@require_admin_context
def quota_class_create(context, class_name, resource, limit):
quota_class_ref = models.QuotaClass()
@ -2946,6 +2947,7 @@ def _volume_type_extra_specs_get_item(context, volume_type_id, key,
return result
@handle_db_data_error
@require_context
def volume_type_extra_specs_update_or_create(context, volume_type_id,
specs):
@ -3010,6 +3012,10 @@ def qos_specs_create(context, values):
spec_entry = models.QualityOfServiceSpecs()
spec_entry.update(item)
spec_entry.save(session=session)
except db_exc.DBDataError:
msg = _('Error writing field to database')
LOG.exception(msg)
raise exception.Invalid(msg)
except Exception as e:
raise db_exc.DBError(e)

View File

@ -79,6 +79,10 @@ def create(context, name, specs=None):
try:
qos_specs_ref = db.qos_specs_create(context, values)
except db_exc.DBDataError:
msg = _('Error writing field to database')
LOG.exception(msg)
raise exception.Invalid(msg)
except db_exc.DBError:
LOG.exception(_LE('DB error:'))
raise exception.QoSSpecsCreateFailed(name=name,