BGPaaS: schema leaking bgpaas port, eventually crashing
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
Juniper Openstack | Status tracked in Trunk | |||||
R3.0 |
New
|
High
|
Suresh Balineni | |||
Trunk |
New
|
High
|
Suresh Balineni |
Bug Description
after repeated restarts, schema seems to have leaked source ports used for the BGP connection from vRouter to CN.
02/02/2016 03:16:29 PM [contrail-schema]: SANDESH: CONNECT TO COLLECTOR: True
02/02/2016 03:16:29 PM [contrail-schema]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_NOTICE]
^F<class 'cfgm_common.
Python 2.7.6: /usr/bin/python
Tue Feb 2 15:16:30 2016
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/bin/
6
7 if __name__ == '__main__':
8 sys.exit(
9 load_entry_
10 )
load_entry_point = <function load_entry_point>
/usr/lib/
830 def server_main():
831 cgitb.enable(
832 main()
833 # end server_main
834
global main = <function main>
/usr/lib/
824 _zookeeper_
825 os.getpid(), run_schema_
826 args)
827 # end main
828
args = Namespace(
/usr/lib/
334 def master_
335 self._election = self._zk_
336 self._election.
337 # end master_election
338
self = <cfgm_common.
self._election = <kazoo.
self._election.run = <bound method Election.run of <kazoo.
func = <function run_schema_
args = (Namespace(
kwargs = {}
/usr/lib/
46 try:
47 with self.lock:
48 func(*args, **kwargs)
49
50 except CancelledError:
func = <function run_schema_
args = (Namespace(
kwargs = {}
/usr/lib/
805
806 global transformer
807 transformer = SchemaTransform
808 gevent.
809 # end run_schema_
global transformer = None
global SchemaTransformer = <class 'schema_
args = Namespace(
/usr/lib/
214 DBBaseST._vnc_lib = _vnc_lib
215 ServiceChain.init()
216 self.reinit()
217 # create cpu_info object to send periodic updates
218 sysinfo_req = False
self = <schema_
self.reinit = <bound method SchemaTransform
/usr/lib/
470 for cls in DBBaseST.
471 for obj in cls.values():
472 obj.evaluate()
473 self.process_
474 # end reinit
obj = <schema_
obj.evaluate = <bound method BgpAsAServiceST
/usr/lib/
2889 for name in (self.virtual_
2890 set(self.
2891 self.create_
2892 # end evaluate
2893
self = <schema_
self.create_
name = u'default-
/usr/lib/
2926 address=ip,
2927 identifier=ip,
2928 source_
2929 router_
2930 bgp_router.
source_port undefined
self = <schema_
self._cassandra = <schema_
self._cassandra
router_fq_name = u'default-
/usr/lib/
267
268 def alloc_bgpaas_
269 return self._bgpaas_
270
271 def free_bgpaas_
self = <schema_
self._bgpaas_
self._bgpaas_
name = u'default-
/usr/lib/
152 self._in_use[idx] = 1
153
154 idx = self._get_
155 try:
156 # Create a node at path and return its integer value
idx = 257L
self = <cfgm_common.
self._get_
/usr/lib/
77
78 raise ResourceExhaust
79 'Cannot get zk index from bit %s' %(idx))
80 # end _get_zk_index
81
idx = 257L
<class 'cfgm_common.
__class__ = <class 'cfgm_common.
__delattr__ = <method-wrapper '__delattr__' of ResourceExhaust
__dict__ = {}
__doc__ = None
__format__ = <built-in method __format__ of ResourceExhaust
__getattrib
__getitem__ = <method-wrapper '__getitem__' of ResourceExhaust
__getslice__ = <method-wrapper '__getslice__' of ResourceExhaust
__hash__ = <method-wrapper '__hash__' of ResourceExhaust
__init__ = <method-wrapper '__init__' of ResourceExhaust
__module__ = 'cfgm_common.
__new__ = <built-in method __new__ of type object>
__reduce__ = <built-in method __reduce__ of ResourceExhaust
__reduce_ex__ = <built-in method __reduce_ex__ of ResourceExhaust
__repr__ = <method-wrapper '__repr__' of ResourceExhaust
__setattr__ = <method-wrapper '__setattr__' of ResourceExhaust
__setstate__ = <built-in method __setstate__ of ResourceExhaust
__sizeof__ = <built-in method __sizeof__ of ResourceExhaust
__str__ = <method-wrapper '__str__' of ResourceExhaust
__subclassh
__unicode__ = <built-in method __unicode__ of ResourceExhaust
__weakref__ = None
args = ('Cannot get zk index from bit 257',)
message = 'Cannot get zk index from bit 257'
The above is a description of an error in a Python program. Here is
the original traceback:
Traceback (most recent call last):
File "/usr/bin/
load_
File "/usr/lib/
main()
File "/usr/lib/
args)
File "/usr/lib/
self.
File "/usr/lib/
func(*args, **kwargs)
File "/usr/lib/
transformer = SchemaTransform
File "/usr/lib/
self.reinit()
File "/usr/lib/
obj.evaluate()
File "/usr/lib/
self.
File "/usr/lib/
source_
File "/usr/lib/
return self._bgpaas_
File "/usr/lib/
idx = self._get_
File "/usr/lib/
'Cannot get zk index from bit %s' %(idx))
ResourceExhaust
^C
root@csol2-