When port-limit is reached , a port-create causes internal server error
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Juniper Openstack | Status tracked in Trunk | |||||
R1.1 |
Won't Fix
|
High
|
Sachin Bansal | |||
Trunk |
Fix Committed
|
High
|
Sachin Bansal |
Bug Description
When port-limit is reached, a port-create causes internal server instead of giving the right exception.
contrail-api log seems to indicate the right error message...but neutron shows internal server error :
root@nodec22:~# neutron port-create public_vn
Request Failed: internal server error while processing your request.
root@nodec22:~#
root@nodec22:~# neutron quota-show --tenant-id 3088e9aba97b4f2
+------
| Field | Value |
+------
| floatingip | -1 |
| nat_instance | -1 |
| network | -1 |
| port | 1 |
| route_table | -1 |
| router | -1 |
| security_group | -1 |
| security_group_rule | -1 |
| subnet | -1 |
+------
root@nodec22:~#
contrail-api log:
==============
<class 'cfgm_common.
Python 2.7.3: /usr/bin/python
Sun Aug 10 05:09:11 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/
388 try:
389 cfgdb = self._get_
390 net_info = cfgdb.port_
391 return net_info
392 except Exception as e:
net_info undefined
cfgdb = <vnc_openstack.
cfgdb.port_create = <bound method DBInterface.
port = {u'fields': None, u'filters': None, u'resource': {u'admin_state_up': True, u'binding:host_id': u'nodeh5', u'device_id': u'b44a8d2d-
/usr/lib/
3355
3356 # create the object
3357 port_id = self._resource_
3358
3359 # initialize ip object
port_id undefined
self = <vnc_openstack.
self._resource_
port_obj = <vnc_api.
/usr/lib/
534 def _resource_
535 try:
536 obj_uuid = getattr(
537 except RefsExistError:
538 obj.uuid = str(uuid.
builtingetattr = <built-in function getattr>
self = <vnc_openstack.
self._vnc_lib = <vnc_api.
resource_type = 'virtual_
obj = <vnc_api.
/usr/lib/
5442 content = self._request_
5443 vnc_api.
5444 data = json_body)
5445
5446 virtual_
data undefined
json_body = '{"virtual-
/usr/lib/
346 % (op, url, data, content))
347 elif status == 403:
348 raise PermissionDenie
349 elif status == 409:
350 raise RefsExistError(
global PermissionDenied = <class 'cfgm_common.
content = u"[u'default-
<class 'cfgm_common.
__class__ = <class 'cfgm_common.
__delattr__ = <method-wrapper '__delattr__' of PermissionDenied object>
__dict__ = {}
__doc__ = None
__format__ = <built-in method __format__ of PermissionDenied object>
__getattrib
__getitem__ = <method-wrapper '__getitem__' of PermissionDenied object>
__getslice__ = <method-wrapper '__getslice__' of PermissionDenied object>
__hash__ = <method-wrapper '__hash__' of PermissionDenied object>
__init__ = <method-wrapper '__init__' of PermissionDenied object>
__module__ = 'cfgm_common.
__new__ = <built-in method __new__ of type object>
__reduce__ = <built-in method __reduce__ of PermissionDenied object>
__reduce_ex__ = <built-in method __reduce_ex__ of PermissionDenied object>
__repr__ = <method-wrapper '__repr__' of PermissionDenied object>
__setattr__ = <method-wrapper '__setattr__' of PermissionDenied object>
__setstate__ = <built-in method __setstate__ of PermissionDenied object>
__sizeof__ = <built-in method __sizeof__ of PermissionDenied object>
__str__ = <method-wrapper '__str__' of PermissionDenied object>
__subclassh
__unicode__ = <built-in method __unicode__ of PermissionDenied object>
__weakref__ = None
args = (u"[u'default-
message = u"[u'default-
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/
net_info = cfgdb.port_
File "/usr/lib/
port_id = self._resource_
File "/usr/lib/
obj_uuid = getattr(
File "/usr/lib/
data = json_body)
File "/usr/lib/
raise PermissionDenie
PermissionDenied: [u'default-domain', u'public', u'6668e474-
Traceback (most recent call last):
File "/usr/lib/
return route.call(**args)
File "/usr/lib/
rv = callback(*a, **ka)
File "/usr/lib/
return self.plugin_
File "/usr/lib/
raise e
PermissionDenied: [u'default-domain', u'public', u'6668e474-
10.204.217.69 - - [2014-08-10 05:09:11] "POST /neutron/port HTTP/1.1" 500 156 0.095246
-------
2014-08-10 05:09:11.357 ERROR [neutron.
Traceback (most recent call last):
File "/usr/lib/
result = method(
File "/usr/lib/
obj = obj_creator(
File "/usr/lib/
port = self._create_
File "/usr/lib/
obj_
File "/usr/lib/
self.
File "/usr/lib/
error_class = CONTRAIL_
KeyError: 500
Changed in juniperopenstack: | |
status: | New → In Progress |
https:/ /github. com/Juniper/ contrail- controller/ commit/ 14ca4ba754c8564 d440e1db7df41c9 2245ac801e