Build 1.10 18
http://anamika.englab.juniper.net:8080/job/ubuntu-12-04_havana_Single_node_Tempest/176/testReport/tempest.api.network.test_routers/RoutersTest/test_add_multiple_router_interfaces_gate_smoke_/
Could be reproduced by running the test tempest.api.network.test_routers.RoutersTest.test_add_multiple_router_interfaces
Tempest trace :
==============
_StringException: Empty attachments:
stderr
stdout
pythonlogging:'': {{{
2014-08-22 10:30:49,897 Request (RoutersTest:test_add_multiple_router_interfaces): 200 POST http://10.204.217.70:5000/v2.0/tokens
2014-08-22 10:30:50,326 Request (RoutersTest:test_add_multiple_router_interfaces): 201 POST http://10.204.217.69:9696/v2.0/networks 0.427s
2014-08-22 10:30:50,675 Request (RoutersTest:test_add_multiple_router_interfaces): 201 POST http://10.204.217.69:9696/v2.0/networks 0.346s
2014-08-22 10:30:51,086 Request (RoutersTest:test_add_multiple_router_interfaces): 500 POST http://10.204.217.69:9696/v2.0/subnets 0.408s
}}}
Traceback (most recent call last):
File "/home/ubuntu/jenkins/workspace/ubuntu-12-04_havana_Single_node_Tempest/tempest/api/network/test_routers.py", line 307, in test_add_multiple_router_interfaces
subnet01 = self.create_subnet(network01)
File "/home/ubuntu/jenkins/workspace/ubuntu-12-04_havana_Single_node_Tempest/tempest/api/network/base.py", line 171, in create_subnet
gateway_ip=gateway)
File "/home/ubuntu/jenkins/workspace/ubuntu-12-04_havana_Single_node_Tempest/tempest/services/network/network_client_base.py", line 144, in _create
resp, body = self.post(uri, post_data)
File "/home/ubuntu/jenkins/workspace/ubuntu-12-04_havana_Single_node_Tempest/tempest/services/network/network_client_base.py", line 71, in post
return self.rest_client.post(uri, body, headers)
File "/home/ubuntu/jenkins/workspace/ubuntu-12-04_havana_Single_node_Tempest/tempest/common/rest_client.py", line 209, in post
return self.request('POST', url, extra_headers, headers, body)
File "/home/ubuntu/jenkins/workspace/ubuntu-12-04_havana_Single_node_Tempest/tempest/common/rest_client.py", line 419, in request
resp, resp_body)
File "/home/ubuntu/jenkins/workspace/ubuntu-12-04_havana_Single_node_Tempest/tempest/common/rest_client.py", line 515, in _error_checker
raise exceptions.ServerFault(message)
ServerFault: Got server fault
Details: {"NeutronError": "Request Failed: internal server error while processing your request."}
contrail-api-0.log:
================
127.0.0.1 - - [2014-08-21 22:17:54] "PUT /virtual-network/58a0651d-bc2f-4777-bbe0-0fbe7f813036 HTTP/1.1" 200 262 0.005815
ERROR:vnc_cfg_api_server.vnc_cfg_api_server:Exception in REST api handler:
<type 'exceptions.TypeError'>
Python 2.7.3: /usr/bin/python
Thu Aug 21 22:17:55 2014
A problem occurred in a Python script. Here is the sequence offunction calls leading up to the error, in the order they occurred. /usr/lib/python2.7/dist-packages/vnc_cfg_api_server/vnc_cfg_api_server.py in handler_trap_exception(*args=(), **kwargs={})
400 def handler_trap_exception(*args, **kwargs):
401 try:
402 return handler(*args, **kwargs)
403 except Exception as e: 404 # don't log details of bottle.abort i.e handled error caseshandler = <bound method VncApiServer.ref_update_http_post ...i_server.vnc_cfg_api_server.VncApiServer object>>args = ()kwargs = {}
/usr/lib/python2.7/dist-packages/vnc_cfg_api_server/vnc_cfg_api_server.py in ref_update_http_post(self=<vnc_cfg_api_server.vnc_cfg_api_se
rver.VncApiServer object>)
500 bottle.abort(404, 'UUID ' + obj_uuid + ' not found')
501 obj_dict = {ref_type+'_refs': [{'to':ref_fq_name, 'uuid': ref_uuid, 'attr':attr}]}
502 (ok, put_result) = r_class.http_put(obj_uuid, fq_name, obj_dict, self._db_conn)
503 if not ok:
504 (code, msg) = put_result
ok undefined
put_result undefined
r_class = <class 'vnc_cfg_api_server.vnc_cfg_types.VirtualNetworkServer'>
r_class.http_put = <bound method type.http_put of <class 'vnc_cfg_api_server.vnc_cfg_types.VirtualNetworkServer'>>
obj_uuid = u'58a0651d-bc2f-4777-bbe0-0fbe7f813036'
fq_name = [u'default-domain', u'demo', u'router-network01--872587018']
obj_dict = {u'network_ipam_refs': [{'attr': {u'host_routes': None, u'ipam_subnets': [{u'addr_from_start': True, u'allocation_pools': [], u'default_gateway': u'10.100.0.1', u'dhcp_option_list': None, u'dns_nameservers': [], u'enable_dhcp': True, u'host_routes': None, u'subnet': {...}, u'subnet_name': u'', u'subnet_uuid': None}]}, 'to': [u'default-domain', u'default-project', u'default-network-ipam'], 'uuid': '375c93b0-b198-4852-9799-d8b85859413c'}]}
self = <vnc_cfg_api_server.vnc_cfg_api_server.VncApiServer object>
self._db_conn = <vnc_cfg_api_server.vnc_cfg_ifmap.VncDbClient object>
/usr/lib/python2.7/dist-packages/vnc_cfg_api_server/vnc_cfg_types.py in http_put(cls=<class 'vnc_cfg_api_server.vnc_cfg_types.VirtualNetworkServer'>, id=u'58a0651d-bc2f-4777-bbe0-0fbe7f813036', fq_name=[u'default-domain', u'demo', u'router-network01--872587018'], obj_dict={u'network_ipam_refs': [{'attr': {u'host_routes': None, u'ipam_subnets': [{u'addr_from_start': True, u'allocation_pools': [], u'default_gateway': u'10.100.0.1', u'dhcp_option_list': None, u'dns_nameservers': [], u'enable_dhcp': True, u'host_routes': None, u'subnet': {...}, u'subnet_name': u'', u'subnet_uuid': None}]}, 'to': [u'default-domain', u'default-project', u'default-network-ipam'], 'uuid': '375c93b0-b198-4852-9799-d8b85859413c'}]}, db_conn=<vnc_cfg_api_server.vnc_cfg_ifmap.VncDbClient object>)
400
401 (ok, result) = cls.addr_mgmt.net_check_subnet_quota(read_result,
402 obj_dict, db_conn)
403 if not ok:
404 return (ok, (403, result))
obj_dict = {u'network_ipam_refs': [{'attr': {u'host_routes': None, u'ipam_subnets': [{u'addr_from_start': True, u'allocation_pools': [], u'default_gateway': u'10.100.0.1', u'dhcp_option_list': None, u'dns_nameservers': [], u'enable_dhcp': True, u'host_routes': None, u'subnet': {...}, u'subnet_name': u'', u'subnet_uuid': None}]}, 'to': [u'default-domain', u'default-project', u'default-network-ipam'], 'uuid': '375c93b0-b198-4852-9799-d8b85859413c'}]}
db_conn = <vnc_cfg_api_server.vnc_cfg_ifmap.VncDbClient object>
/usr/lib/python2.7/dist-packages/vnc_cfg_api_server/vnc_addr_mgmt.py in net_check_subnet_quota(self=<vnc_cfg_api_server.vnc_addr_mgmt.AddrMgmt object>, db_vn_dict={'display_name': u'router-network01--872587018', 'fq_name': [u'default-domain', u'demo', u'router-network01--872587018'], 'id_perms': {u'created': u'2014-08-22T05:17:54.234696', u'description': None, u'enable': True, u'last_modified': u'2014-08-22T05:17:54.989376', u'permissions': {u'group': u'cloud-admin-group', u'group_access': 7, u'other_access': 7, u'owner': u'cloud-admin', u'owner_access': 7}, u'uuid': {u'uuid_lslong': 13537837790733086774L, u'uuid_mslong': 6386215449997035383}}, 'is_shared': False, 'parent_href': u'http://0.0.0.0:9100/project/c1bad36d-a1b5-4941-b7a4-00f03c560e7e', 'parent_type': u'project', 'parent_uuid': 'c1bad36d-a1b5-4941-b7a4-00f03c560e7e', 'router_external': False, 'routing_instances': [{'href': 'http://0.0.0.0:9100/routing-instance/54279cb2-c438-4ebe-8e3f-1ddb637f77db', 'to': [u'default-domain', u'demo', u'router-network01--872587018', u'router-network01--872587018'], 'uuid': '54279cb2-c438-4ebe-8e3f-1ddb637f77db'}], 'uuid': u'58a0651d-bc2f-4777-bbe0-0fbe7f813036', ...}, req_vn_dict={u'network_ipam_refs': [{'attr': {u'host_routes': None, u'ipam_subnets': [{u'addr_from_start': True, u'allocation_pools': [], u'default_gateway': u'10.100.0.1', u'dhcp_option_list': None, u'dns_nameservers': [], u'enable_dhcp': True, u'host_routes': None, u'subnet': {...}, u'subnet_name': u'', u'subnet_uuid': None}]}, 'to': [u'default-domain', u'default-project', u'default-network-ipam'], 'uuid': '375c93b0-b198-4852-9799-d8b85859413c'}]}, db_conn=<vnc_cfg_api_server.vnc_cfg_ifmap.VncDbClient object>)
551 if not ok:
552 continue
553 subnets.extend(self._vn_to_subnets(net_dict))
554 quota_count = len(subnets) - 1
555 (ok, quota_limit) = QuotaHelper.check_quota_limit(proj_dict, obj_type,
subnets = [u'10.100.0.0/28']
subnets.extend = <built-in method extend of list object>
self = <vnc_cfg_api_server.vnc_addr_mgmt.AddrMgmt object>
self._vn_to_subnets = <bound method AddrMgmt._vn_to_subnets of <vnc_cfg_api_server.vnc_addr_mgmt.AddrMgmt object>>
net_dict = {'display_name': u'test-network--1259721079', 'fq_name': [u'default-domain', u'demo', u'test-network--1259721079'], 'id_perms': {u'created': u'2014-08-22T05:01:17.007583', u'description': None, u'enable': True, u'last_modified': u'2014-08-22T05:01:27.076646', u'permissions': {u'group': u'cloud-admin-group', u'group_access': 7, u'other_access': 7, u'owner': u'cloud-admin', u'owner_access': 7}, u'uuid': {u'uuid_lslong': 10410038664687944689L, u'uuid_mslong': 15873877896214891975L}}, 'is_shared': False, 'parent_href': u'http://0.0.0.0:9100/project/c1bad36d-a1b5-4941-b7a4-00f03c560e7e', 'parent_type': u'project', 'parent_uuid': 'c1bad36d-a1b5-4941-b7a4-00f03c560e7e', 'router_external': False, 'routing_instances': [{'href': 'http://0.0.0.0:9100/routing-instance/9937bb9e-4470-47f7-96bc-7f23fbd0d3b5', 'to': [u'default-domain', u'demo', u'test-network--1259721079', u'test-network--1259721079'], 'uuid': '9937bb9e-4470-47f7-96bc-7f23fbd0d3b5'}], 'uuid': 'dc4b57d7-dbd0-4dc7-9077-e302c2ce83f1', ...}
<type 'exceptions.TypeError'>: 'NoneType' object is not iterable
__class__ = <type 'exceptions.TypeError'>
__delattr__ = <method-wrapper '__delattr__' of exceptions.TypeError object>
__dict__ = {}
__doc__ = 'Inappropriate argument type.'
__format__ = <built-in method __format__ of exceptions.TypeError object>
__getattribute__ = <method-wrapper '__getattribute__' of exceptions.TypeError object>
__getitem__ = <method-wrapper '__getitem__' of exceptions.TypeError object>
__getslice__ = <method-wrapper '__getslice__' of exceptions.TypeError object>
__hash__ = <method-wrapper '__hash__' of exceptions.TypeError object>
__init__ = <method-wrapper '__init__' of exceptions.TypeError object>
__new__ = <built-in method __new__ of type object>
__reduce__ = <built-in method __reduce__ of exceptions.TypeError object>
__reduce_ex__ = <built-in method __reduce_ex__ of exceptions.TypeError object>
__repr__ = <method-wrapper '__repr__' of exceptions.TypeError object>
__setattr__ = <method-wrapper '__setattr__' of exceptions.TypeError object>
__setstate__ = <built-in method __setstate__ of exceptions.TypeError object>
__sizeof__ = <built-in method __sizeof__ of exceptions.TypeError object>
__str__ = <method-wrapper '__str__' of exceptions.TypeError object>
__subclasshook__ = <built-in method __subclasshook__ of type object>
__unicode__ = <built-in method __unicode__ of exceptions.TypeError object>
args = ("'NoneType' object is not iterable",)
message = "'NoneType' object is not iterable"
The above is a description of an error in a Python program. Here is
the original traceback:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/vnc_cfg_api_server/vnc_cfg_api_server.py", line 402, in handler_trap_exception
return handler(*args, **kwargs)
File "/usr/lib/python2.7/dist-packages/vnc_cfg_api_server/vnc_cfg_api_server.py", line 502, in ref_update_http_post
(ok, put_result) = r_class.http_put(obj_uuid, fq_name, obj_dict, self._db_conn)
File "/usr/lib/python2.7/dist-packages/vnc_cfg_api_server/vnc_cfg_types.py", line 402, in http_put
obj_dict, db_conn)
File "/usr/lib/python2.7/dist-packages/vnc_cfg_api_server/vnc_addr_mgmt.py", line 553, in net_check_subnet_quota
subnets.extend(self._vn_to_subnets(net_dict))
TypeError: 'NoneType' object is not iterable
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/bottle.py", line 764, in _handle
return route.call(**args)
File "/usr/lib/python2.7/dist-packages/bottle.py", line 1575, in wrapper
rv = callback(*a, **ka)
File "/usr/lib/python2.7/dist-packages/vnc_cfg_api_server/vnc_cfg_api_server.py", line 415, in handler_trap_exception
raise e
TypeError: 'NoneType' object is not iterable
127.0.0.1 - - [2014-08-21 22:17:55] "POST /ref-update HTTP/1.1" 500 156 0.015851
127.0.0.1 - - [2014-08-21 22:17:55] "POST /ref-update HTTP/1.1" 500 156 0.015851
nstance',
u'uuid': u'8ef49293-3b3a-4076-928d-8e8a3a854f21'}
Notification Message: {u'oper': u'UPDATE',
u'type': u'virtual-network',
u'uuid': u'58a0651d-bc2f-4777-bbe0-0fbe7f813036'}
<class 'cfgm_common.exceptions.HttpError'>
Python 2.7.3: /usr/bin/python
Thu Aug 21 22:17:55 2014
A problem occurred in a Python script. Here is the sequence of
function calls leading up to the error, in the order they occurred.
/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_interface.py in plugin_create_subnet(self=<vnc_openstack.neutron_plugin_interface.NeutronPluginInterface object>, context={u'is_admin': False, u'operation': u'CREATE', u'roles': [u'sysadmin', u'Member', u'netadmin'], u'tenant': u'c1bad36da1b54941b7a400f03c560e7e', u'tenant_id': u'c1bad36da1b54941b7a400f03c560e7e', u'type': u'subnet', u'user_id': u'e703e074f7ae4fce9ceb021770a723d2'}, subnet={u'fields': None, u'filters': None, u'resource': {u'cidr': u'10.100.0.0/28', u'contrail:ipam_fq_name': u'', u'enable_dhcp': True, u'gateway_ip': u'10.100.0.1', u'ip_version': 4, u'name': u'', u'network:tenant_id': u'c1bad36da1b54941b7a400f03c560e7e', u'network_id': u'58a0651d-bc2f-4777-bbe0-0fbe7f813036', u'tenant_id': u'c1bad36da1b54941b7a400f03c560e7e'}})
265 try:
266 cfgdb = self._get_user_cfgdb(context)
267 subnet_info = cfgdb.subnet_create(subnet['resource'])
268 return self._make_subnet_dict(subnet_info)
269 except Exception as e:
subnet_info undefined
cfgdb = <vnc_openstack.neutron_plugin_db.DBInterface object>
cfgdb.subnet_create = <bound method DBInterface.subnet_create of <vnc_openstack.neutron_plugin_db.DBInterface object>>
subnet = {u'fields': None, u'filters': None, u'resource': {u'cidr': u'10.100.0.0/28', u'contrail:ipam_fq_name': u'', u'enable_dhcp': True, u'gateway_ip': u'10.100.0.1', u'ip_version': 4, u'name': u'', u'network:tenant_id': u'c1bad36da1b54941b7a400f03c560e7e', u'network_id': u'58a0651d-bc2f-4777-bbe0-0fbe7f813036', u'tenant_id': u'c1bad36da1b54941b7a400f03c560e7e'}}
/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_db.py in subnet_create(self=<vnc_openstack.neutron_plugin_db.DBInterface object>, subnet_q={u'cidr': u'10.100.0.0/28', u'contrail:ipam_fq_name': u'', u'enable_dhcp': True, u'gateway_ip': u'10.100.0.1', u'ip_version': 4, u'name': u'', u'network:tenant_id': u'c1bad36da1b54941b7a400f03c560e7e', u'network_id': u'58a0651d-bc2f-4777-bbe0-0fbe7f813036', u'tenant_id': u'c1bad36da1b54941b7a400f03c560e7e'})
2461 # TODO: Add 'ref_update' API that will set this field
2462 net_obj._pending_field_updates.add('network_ipam_refs')
2463 self._virtual_network_update(net_obj)
2464
2465 # allocate an id to the subnet and store mapping with
self = <vnc_openstack.neutron_plugin_db.DBInterface object>
self._virtual_network_update = <bound method DBInterface._virtual_network_updat..._openstack.neutron_plugin_db.DBInterface object>>
net_obj = <vnc_api.gen.resource_client.VirtualNetwork object>
/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_db.py in _virtual_network_update(self=<vnc_openstack.neutron_plugin_db.DBInterface object>, net_obj=<vnc_api.gen.resource_client.VirtualNetwork object>)
576 def _virtual_network_update(self, net_obj):
577 try:
578 self._vnc_lib.virtual_network_update(net_obj)
579 except PermissionDenied as e:
580 exc_info = {'type': 'BadRequest', 'message': str(e)}
self = <vnc_openstack.neutron_plugin_db.DBInterface object>
self._vnc_lib = <vnc_api.vnc_api.VncApi object>
self._vnc_lib.virtual_network_update = <bound method VncApi.virtual_network_update of <vnc_api.vnc_api.VncApi object>>
net_obj = <vnc_api.gen.resource_client.VirtualNetwork object>
/usr/lib/python2.7/dist-packages/vnc_api/gen/vnc_api_client_gen.py in virtual_network_update(self=<vnc_api.vnc_api.VncApi object>, obj=<vnc_api.gen.resource_client.VirtualNetwork object>)
4858 self.ref_update('virtual-network', obj.uuid, ref_name, ref[0], list(ref[1]), 'DELETE')
4859 for ref in ref_new - ref_orig:
4860 self.ref_update('virtual-network', obj.uuid, ref_name, ref[0], list(ref[1]), 'ADD', ref[2])
4861 obj.clear_pending_updates()
4862
self = <vnc_api.vnc_api.VncApi object>
self.ref_update = <bound method VncApi.ref_update of <vnc_api.vnc_api.VncApi object>>
obj = <vnc_api.gen.resource_client.VirtualNetwork object>
obj.uuid = u'58a0651d-bc2f-4777-bbe0-0fbe7f813036'
ref_name = 'network_ipam_refs'
ref = (None, (u'default-domain', u'default-project', u'default-network-ipam'), <vnc_api.gen.resource_xsd.VnSubnetsType object>)
builtinlist = <type 'list'>
/usr/lib/python2.7/dist-packages/vnc_api/vnc_api.py in ref_update(self=<vnc_api.vnc_api.VncApi object>, obj_type='virtual-network', obj_uuid=u'58a0651d-bc2f-4777-bbe0-0fbe7f813036', ref_type='network-ipam', ref_uuid=None, ref_fq_name=[u'default-domain', u'default-project', u'default-network-ipam'], operation='ADD', attr=<vnc_api.gen.resource_xsd.VnSubnetsType object>)
372 if he.status_code == 404:
373 return None
374 raise he
375
376 return json.loads(content)['uuid']
he = HttpError()
<class 'cfgm_common.exceptions.HttpError'>: HTTP Status: 500 Content: Internal Server Error
__class__ = <class 'cfgm_common.exceptions.HttpError'>
__delattr__ = <method-wrapper '__delattr__' of HttpError object>
__dict__ = {'content': u'Internal Server Error', 'status_code': 500}
__doc__ = None
__format__ = <built-in method __format__ of HttpError object>
__getattribute__ = <method-wrapper '__getattribute__' of HttpError object>
__getitem__ = <method-wrapper '__getitem__' of HttpError object>
__getslice__ = <method-wrapper '__getslice__' of HttpError object>
__hash__ = <method-wrapper '__hash__' of HttpError object>
__init__ = <bound method HttpError.__init__ of HttpError()>
__module__ = 'cfgm_common.exceptions'
__new__ = <built-in method __new__ of type object>
__reduce__ = <built-in method __reduce__ of HttpError object>
__reduce_ex__ = <built-in method __reduce_ex__ of HttpError object>
__repr__ = <method-wrapper '__repr__' of HttpError object>
__setattr__ = <method-wrapper '__setattr__' of HttpError object>
__setstate__ = <built-in method __setstate__ of HttpError object>
__sizeof__ = <built-in method __sizeof__ of HttpError object>
__str__ = <bound method HttpError.__str__ of HttpError()>
__subclasshook__ = <built-in method __subclasshook__ of type object>
__unicode__ = <built-in method __unicode__ of HttpError object>
__weakref__ = None
args = ()
content = u'Internal Server Error'
message = ''
status_code = 500
The above is a description of an error in a Python program. Here is
the original traceback:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_interface.py", line 267, in plugin_create_subnet
subnet_info = cfgdb.subnet_create(subnet['resource'])
File "/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_db.py", line 2463, in subnet_create
self._virtual_network_update(net_obj)
File "/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_db.py", line 578, in _virtual_network_update
self._vnc_lib.virtual_network_update(net_obj)
File "/usr/lib/python2.7/dist-packages/vnc_api/gen/vnc_api_client_gen.py", line 4860, in virtual_network_update
self.ref_update('virtual-network', obj.uuid, ref_name, ref[0], list(ref[1]), 'ADD', ref[2])
File "/usr/lib/python2.7/dist-packages/vnc_api/vnc_api.py", line 374, in ref_update
raise he
HttpError: HTTP Status: 500 Content: Internal Server Error
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/bottle.py", line 764, in _handle
return route.call(**args)
File "/usr/lib/python2.7/dist-packages/bottle.py", line 1575, in wrapper
rv = callback(*a, **ka)
File "/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_interface.py", line 342, in plugin_http_post_subnet
return self.plugin_create_subnet(context, subnet)
File "/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_interface.py", line 271, in plugin_create_subnet
raise e
HttpError: HTTP Status: 500 Content: Internal Server Error
10.204.217.7 - - [2014-08-21 22:17:55] "POST /neutron/subnet HTTP/1.1" 500 156 0.042699