Floating IP associate with a wrong UUID port fails
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Juniper Openstack | Status tracked in Trunk | |||||
Trunk |
In Progress
|
Undecided
|
Unassigned | |||
OpenContrail |
Fix Committed
|
Undecided
|
Numan Siddique |
Bug Description
With release 1.10 if we associate a floating IP to not existing valid UUID resource port, the API returns 500 crash error instead of a not found port error:
$ neutron floatingip-
Request Failed: internal server error while processing your request.
The VNC API traceback:
127.0.0.1 - - [2014-09-09 12:14:53] "GET /virtual-
<class 'cfgm_common.
Python 2.7.3: /usr/bin/python
Tue Sep 9 12:14:53 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/
495 cfgdb = self._get_
496 floatingip_info = cfgdb.floatingi
497 floatingip[
498 return floatingip_info
499 except Exception as e:
floatingip = {u'fields': None, u'filters': None, u'id': u'31cef026-
/usr/lib/
3366 def floatingip_
3367 fip_q['id'] = fip_id
3368 fip_obj = self._floatingi
3369 self._vnc_
3370
fip_obj undefined
self = <vnc_openstack.
self._floatingi
fip_q = {'id': u'31cef026-
global UPDATE = 3
/usr/lib/
1940 if fip_q.get(
1941 port_obj = self._virtual_
1942 port_id=
1943 fip_obj.
1944 else:
port_id undefined
fip_q = {'id': u'31cef026-
/usr/lib/
669 except KeyError:
670 port_obj = self._vnc_
671 id=port_id, fields=
672 fq_name_str = json.dumps(
673 self._db_
builtinid = <built-in function id>
port_id = u'5039cc3b-
fields = None
n_extra_fields = ['logical_
/usr/lib/
5477 query_params = {'exclude_
5478 'exclude_
5479 content = self._request_
rest.OP_GET = 2
uri = u'/virtual-
query_params = {'fields': 'logical_
/usr/lib/
356 elif status == 404:
357 raise NoIdError('Error: oper %s url %s body %s response %s'
358 % (op, url, data, content))
359 elif status == 403:
360 raise PermissionDenie
op = 2
url = u'/virtual-
data = {'fields': 'logical_
content = u'No virtual-
<class 'cfgm_common.
__class__ = <class 'cfgm_common.
__delattr__ = <method-wrapper '__delattr__' of NoIdError object>
__dict__ = {'_unknown_id': u"Error: oper 2 url /virtual-
__doc__ = None
__format__ = <built-in method __format__ of NoIdError object>
__getattrib
__getitem__ = <method-wrapper '__getitem__' of NoIdError object>
__getslice__ = <method-wrapper '__getslice__' of NoIdError object>
__hash__ = <method-wrapper '__hash__' of NoIdError object>
__init__ = <bound method NoIdError.__init__ of NoIdError()>
__module__ = 'cfgm_common.
__new__ = <built-in method __new__ of type object>
__reduce__ = <built-in method __reduce__ of NoIdError object>
__reduce_ex__ = <built-in method __reduce_ex__ of NoIdError object>
__repr__ = <method-wrapper '__repr__' of NoIdError object>
__setattr__ = <method-wrapper '__setattr__' of NoIdError object>
__setstate__ = <built-in method __setstate__ of NoIdError object>
__sizeof__ = <built-in method __sizeof__ of NoIdError object>
__str__ = <bound method NoIdError.__str__ of NoIdError()>
__subclassh
__unicode__ = <built-in method __unicode__ of NoIdError object>
__weakref__ = None
_unknown_id = u"Error: oper 2 url /virtual-
args = ()
message = ''
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/
floatingip[
File "/usr/lib/
fip_obj = self._floatingi
File "/usr/lib/
port_
File "/usr/lib/
id=port_id, fields=
File "/usr/lib/
content = self._request_
File "/usr/lib/
% (op, url, data, content))
NoIdError: Unknown id: Error: oper 2 url /virtual-
Traceback (most recent call last):
File "/usr/lib/
return route.call(**args)
File "/usr/lib/
rv = callback(*a, **ka)
File "/usr/lib/
rv = callback(*a, **ka)
File "/usr/lib/
return self.plugin_
File "/usr/lib/
raise e
NoIdError: Unknown id: Error: oper 2 url /virtual-
Changed in opencontrail: | |
assignee: | nobody → Numan Siddique (numansiddique) |
status: | New → In Progress |
Changed in juniperopenstack: | |
importance: | Undecided → Medium |
assignee: | nobody → Numan Siddique (numansiddique) |
milestone: | none → r1.11 |
Changed in juniperopenstack: | |
status: | New → Fix Committed |
Changed in opencontrail: | |
status: | In Progress → Fix Committed |
Changed in juniperopenstack: | |
milestone: | r1.11 → none |
tags: | added: config |
Fix proposed and merged
Master --> https:/ /review. opencontrail. org/#/c/ 2712/ /review. opencontrail. org/#/c/ 2713
R1.10 --> https:/