← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1515209] Re: HA router can't associate an external network without gateway ip

 

** Changed in: neutron
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1515209

Title:
  HA router can't associate an external network without gateway ip

Status in neutron:
  Fix Released

Bug description:
  When associate a HA router with an external network without gateway
  ip, I will get the following error:

  2015-11-11 03:23:44.599 ERROR neutron.agent.l3.agent [-] Failed to process compatible router '8114b0c3-85e6-4b71-ab74-a0c1437882cd'
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent Traceback (most recent call last):
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/agent/l3/agent.py", line 503, in _process_router_update
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     self._process_router_if_compatible(router)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/agent/l3/agent.py", line 444, in _process_router_if_compatible
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     self._process_added_router(router)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/agent/l3/agent.py", line 452, in _process_added_router
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     ri.process(self)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/agent/l3/ha_router.py", line 387, in process
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     super(HaRouter, self).process(agent)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/common/utils.py", line 366, in call
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     self.logger(e)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/usr/lib/python2.7/site-packages/oslo_utils/excutils.py", line 197, in __exit__
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     six.reraise(self.type_, self.value, self.tb)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/common/utils.py", line 363, in call
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     return func(*args, **kwargs)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/agent/l3/router_info.py", line 694, in process
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     self.process_external(agent)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/agent/l3/router_info.py", line 660, in process_external
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     self._process_external_gateway(ex_gw_port, agent.pd)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/agent/l3/router_info.py", line 569, in _process_external_gateway
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     self.external_gateway_added(ex_gw_port, interface_name)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/agent/l3/ha_router.py", line 356, in external_gateway_added
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     self._add_gateway_vip(ex_gw_port, interface_name)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/agent/l3/ha_router.py", line 249, in _add_gateway_vip
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     self._add_default_gw_virtual_route(ex_gw_port, interface_name)
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent   File "/opt/stack/neutron/neutron/agent/l3/ha_router.py", line 205, in _add_default_gw_virtual_route
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent     instance.virtual_routes.gateway_routes = default_gw_rts
  2015-11-11 03:23:44.599 TRACE neutron.agent.l3.agent UnboundLocalError: local variable 'instance' referenced before assignment

  
  For HA router,  the default gw route should only be added when there is any gateway ip present.

  https://github.com/openstack/neutron/blob/master/neutron/agent/l3/ha_router.py#L248

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1515209/+subscriptions


References