[3.0.2.0-32]v1 SI not launched during ECMP tests

Bug #1579368 reported by Ganesha HV
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
Juniper Openstack
Fix Committed
High
Suresh Balineni
R3.0
Fix Committed
High
Suresh Balineni

Bug Description

Topology :
Config Nodes : [u'nodei15']
Control Nodes : [u'nodei15']
Compute Nodes : [u'nodek12']
Openstack Node : nodek11
WebUI Node : nodei15
Analytics Nodes : [u'nodei15']
Physical Devices : [u"'hooper'"]

1]. During a v1 SI launch, the following errors are seen in Schema:

<type 'exceptions.AttributeError'>
Python 2.7.6: /usr/bin/python
Sat May 7 18:08:10 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/lib/python2.7/dist-packages/schema_transformer/to_bgp.py in _vnc_subscribe_callback(self=<schema_transformer.to_bgp.SchemaTransformer object>, oper_info={u'oper': u'UPDATE'
, u'type': u'virtual-machine-interface', u'uuid': u'7dc8e157-bca0-488e-82ab-46e7f4da405f'})
  318 res_obj = cls.get(res_id)
  319 if res_obj is not None:
  320 res_obj.evaluate()
  321
  322 for vn_id in dependency_tracker.resources.get('virtual_network', []):
res_obj = <schema_transformer.config_db.VirtualNetworkST object>
res_obj.evaluate = <bound method VirtualNetworkST.evaluate of <schema_transformer.config_db.VirtualNetworkST object>>

 /usr/lib/python2.7/dist-packages/schema_transformer/config_db.py in evaluate(self=<schema_transformer.config_db.VirtualNetworkST object>)
 1236 primary_ri = self.get_primary_routing_instance()
 1237 if primary_ri:
 1238 primary_ri.update_static_routes()
 1239 self.update_pnf_presence()
 1240 self.check_multi_policy_service_chain_status()
primary_ri = <schema_transformer.config_db.RoutingInstanceST object>
primary_ri.update_static_routes = <bound method RoutingInstanceST.update_static_ro..._transformer.config_db.RoutingInstanceST object>>

 /usr/lib/python2.7/dist-packages/schema_transformer/config_db.py in update_static_routes(self=<schema_transformer.config_db.RoutingInstanceST object>)
 2074 continue
 2075 route_tables = RouteTableST.get_by_service_instance(si.name)
 2076 sc_address = {4: si.get_allocated_interface_ip("left", 4),
 2077 6: si.get_allocated_interface_ip("left", 6)}
 2078 for route_table_name in route_tables:
sc_address undefined
si = <schema_transformer.config_db.ServiceInstanceST object>
si.get_allocated_interface_ip = <bound method ServiceInstanceST.get_allocated_in..._transformer.config_db.ServiceInstanceST object>>

 /usr/lib/python2.7/dist-packages/schema_transformer/config_db.py in update_static_routes(self=<schema_transformer.config_db.RoutingInstanceST object>)
 2074 continue
 2075 route_tables = RouteTableST.get_by_service_instance(si.name)
 2076 sc_address = {4: si.get_allocated_interface_ip("left", 4),
 2077 6: si.get_allocated_interface_ip("left", 6)}
 2078 for route_table_name in route_tables:
sc_address undefined
si = <schema_transformer.config_db.ServiceInstanceST object>
si.get_allocated_interface_ip = <bound method ServiceInstanceST.get_allocated_in..._transformer.config_db.ServiceInstanceST object>>

 /usr/lib/python2.7/dist-packages/schema_transformer/config_db.py in get_allocated_interface_ip(self=<schema_transformer.config_db.ServiceInstanceST object>, side='left', version=4)
 3653 continue
 3654 vmi = vm_pt.get_vmi_by_service_type(side)
 3655 return vmi.get_any_instance_ip_address(version)
 3656 return None
 3657
vmi = None
vmi.get_any_instance_ip_address undefined
version = 4
<type 'exceptions.AttributeError'>: 'NoneType' object has no attribute 'get_any_instance_ip_address'
    __class__ = <type 'exceptions.AttributeError'>
    __delattr__ = <method-wrapper '__delattr__' of exceptions.AttributeError object>
    __dict__ = {}
    __doc__ = 'Attribute not found.'
    __format__ = <built-in method __format__ of exceptions.AttributeError object>
    __getattribute__ = <method-wrapper '__getattribute__' of exceptions.AttributeError object>
    __getitem__ = <method-wrapper '__getitem__' of exceptions.AttributeError object>
    __getslice__ = <method-wrapper '__getslice__' of exceptions.AttributeError object>
    __hash__ = <method-wrapper '__hash__' of exceptions.AttributeError object>
    __init__ = <method-wrapper '__init__' of exceptions.AttributeError object>
    __new__ = <built-in method __new__ of type object>
    __reduce__ = <built-in method __reduce__ of exceptions.AttributeError object>
    __reduce_ex__ = <built-in method __reduce_ex__ of exceptions.AttributeError object>
    __repr__ = <method-wrapper '__repr__' of exceptions.AttributeError object>
    __setattr__ = <method-wrapper '__setattr__' of exceptions.AttributeError object>
    __setstate__ = <built-in method __setstate__ of exceptions.AttributeError object>
    __sizeof__ = <built-in method __sizeof__ of exceptions.AttributeError object>
    __str__ = <method-wrapper '__str__' of exceptions.AttributeError object>
    __subclasshook__ = <built-in method __subclasshook__ of type object>
    __unicode__ = <built-in method __unicode__ of exceptions.AttributeError object>
    args = ("'NoneType' object has no attribute 'get_any_instance_ip_address'",)
    message = "'NoneType' object has no attribute 'get_any_instance_ip_address'"

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/schema_transformer/to_bgp.py", line 320, in _vnc_subscribe_callback
    res_obj.evaluate()
  File "/usr/lib/python2.7/dist-packages/schema_transformer/config_db.py", line 1238, in evaluate
    primary_ri.update_static_routes()
  File "/usr/lib/python2.7/dist-packages/schema_transformer/config_db.py", line 2076, in update_static_routes
    sc_address = {4: si.get_allocated_interface_ip("left", 4),
  File "/usr/lib/python2.7/dist-packages/schema_transformer/config_db.py", line 3655, in get_allocated_interface_ip
    return vmi.get_any_instance_ip_address(version)
AttributeError: 'NoneType' object has no attribute 'get_any_instance_ip_address'

Setup is in the same state.

Sachin Bansal (sbansal)
Changed in juniperopenstack:
assignee: Sachin Bansal (sbansal) → Suresh Balineni (sbalineni)
Jeba Paulaiyan (jebap)
information type: Proprietary → Public
tags: added: blocker
Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] R3.0

Review in progress for https://review.opencontrail.org/20167
Submitter: Suresh Balineni (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/20167
Committed: http://github.org/Juniper/contrail-controller/commit/e7f41331580d99b768823da07df97ee5a50e07cd
Submitter: Zuul
Branch: R3.0

commit e7f41331580d99b768823da07df97ee5a50e07cd
Author: Suresh Balineni <email address hidden>
Date: Thu May 12 17:54:23 2016 +0000

[ST]: Skip the ip address allocation for SNAT until vmi is available

Fix is already provided in mainline, backporting to 3.0

Change-Id: I9d80103e9ef5455039d216910435f7f58b129a55
Closes-Bug: #1579368

Sachin Bansal (sbansal)
Changed in juniperopenstack:
status: New → Fix Committed
Changed in juniperopenstack:
milestone: r3.0.2.0 → none
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.