Public bug reported:
I use REST api to create/update subnet with serive_types. I use some int
type values in the list.
The creation body is:
{
"subnet": {
"network_id": "0d04102a-ba15-4d6c-94ee-8ac480cbb1ba",
"name": "hellowor",
"cidr": "99.99.99.99/24",
"service_types" : ["network:1",2,3],
"ip_version": 4
}
}
neutron server hit internal error.
2016-10-13 17:44:27.842 ERROR neutron.api.v2.resource
[req-b9846c07-3574-4094-b6fe-ca978c1d31ce admin
488da3aab0ff45df9e85e17e7f89fedd] create failed: No details.
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource Traceback (most recent
call last):
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/api/v2/resource.py", line 79, in resource
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource result =
method(request=request, **args)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/api/v2/base.py", line 430, in create
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource return
self._create(request, body, **kwargs)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/db/api.py", line 88, in wrapped
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource setattr(e,
'_RETRY_EXCEEDED', True)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in
__exit__
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource self.force_reraise()
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in
force_reraise
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
six.reraise(self.type_, self.value, self.tb)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/db/api.py", line 84, in wrapped
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource return f(*args,
**kwargs)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 151, in wrapper
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource ectxt.value =
e.inner_exc
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in
__exit__
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource self.force_reraise()
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in
force_reraise
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
six.reraise(self.type_, self.value, self.tb)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 139, in wrapper
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource return f(*args,
**kwargs)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/db/api.py", line 124, in wrapped
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
traceback.format_exc())
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in
__exit__
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource self.force_reraise()
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in
force_reraise
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
six.reraise(self.type_, self.value, self.tb)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/db/api.py", line 119, in wrapped
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource return f(*dup_args,
**dup_kwargs)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/api/v2/base.py", line 439, in _create
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
allow_bulk=self._allow_bulk)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/api/v2/base.py", line 719, in prepare_request_body
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
attributes.convert_value(attr_info, res_dict, webob.exc.HTTPBadRequest)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/api/v2/attributes.py", line 431, in convert_value
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource res =
validator(res_dict[attr], attr_vals['validate'][rule])
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/extensions/subnet_service_types.py", line 47, in
_validate_subnet_service_types
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource not
service_type.startswith(tuple(prefixes))):
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource AttributeError: 'int'
object has no attribute 'startswith'
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
** Affects: neutron
Importance: Undecided
Assignee: zhaobo (zhaobo6)
Status: New
** Changed in: neutron
Assignee: (unassigned) => zhaobo (zhaobo6)
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1633066
Title:
Input int value into service_type list hit internal error
Status in neutron:
New
Bug description:
I use REST api to create/update subnet with serive_types. I use some
int type values in the list.
The creation body is:
{
"subnet": {
"network_id": "0d04102a-ba15-4d6c-94ee-8ac480cbb1ba",
"name": "hellowor",
"cidr": "99.99.99.99/24",
"service_types" : ["network:1",2,3],
"ip_version": 4
}
}
neutron server hit internal error.
2016-10-13 17:44:27.842 ERROR neutron.api.v2.resource
[req-b9846c07-3574-4094-b6fe-ca978c1d31ce admin
488da3aab0ff45df9e85e17e7f89fedd] create failed: No details.
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource Traceback (most recent
call last):
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/api/v2/resource.py", line 79, in resource
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource result =
method(request=request, **args)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/api/v2/base.py", line 430, in create
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource return
self._create(request, body, **kwargs)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/db/api.py", line 88, in wrapped
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource setattr(e,
'_RETRY_EXCEEDED', True)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in
__exit__
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource self.force_reraise()
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in
force_reraise
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
six.reraise(self.type_, self.value, self.tb)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/db/api.py", line 84, in wrapped
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource return f(*args,
**kwargs)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 151, in wrapper
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource ectxt.value =
e.inner_exc
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in
__exit__
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource self.force_reraise()
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in
force_reraise
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
six.reraise(self.type_, self.value, self.tb)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_db/api.py", line 139, in wrapper
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource return f(*args,
**kwargs)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/db/api.py", line 124, in wrapped
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
traceback.format_exc())
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 220, in
__exit__
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource self.force_reraise()
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 196, in
force_reraise
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
six.reraise(self.type_, self.value, self.tb)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/db/api.py", line 119, in wrapped
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource return f(*dup_args,
**dup_kwargs)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/api/v2/base.py", line 439, in _create
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
allow_bulk=self._allow_bulk)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/api/v2/base.py", line 719, in prepare_request_body
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
attributes.convert_value(attr_info, res_dict, webob.exc.HTTPBadRequest)
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/api/v2/attributes.py", line 431, in convert_value
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource res =
validator(res_dict[attr], attr_vals['validate'][rule])
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource File
"/opt/stack/neutron/neutron/extensions/subnet_service_types.py", line 47, in
_validate_subnet_service_types
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource not
service_type.startswith(tuple(prefixes))):
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource AttributeError: 'int'
object has no attribute 'startswith'
2016-10-13 17:44:27.842 TRACE neutron.api.v2.resource
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1633066/+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