← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1785848] [NEW] Neutron server producing tracebacks with 'L3RouterPlugin' object has no attribute 'is_distributed_router' when DVR is enabled

 

Public bug reported:

In environments where DVR is enabled and when an instance with floating
IPs is moved from one host to another (due to live migration or shelving
/ un-shelvinng) the Neutron server produces the following traceback:

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/neutron_lib/callbacks/manager.py", line 197, in _notify_loop
    callback(resource, event, trigger, **kwargs)
  File "/opt/stack/new/neutron/neutron/db/l3_dvrscheduler_db.py", line 460, in _notify_l3_agent_port_update
     l3plugin.is_distributed_router(fip['router_id']) and
AttributeError: 'L3RouterPlugin' object has no attribute 'is_distributed_router'

The problem was introduced by this patch:
https://review.openstack.org/#/c/579058. Line
https://review.openstack.org/#/c/579058/3/neutron/db/l3_dvrscheduler_db.py@460
wrongly tries to call is_distributed_router as though it is a method in
the L3 plugin. The real intent was to call it from module
neutron/db/l3_dvr_db.py, since it is defined there outside any classes

** Affects: neutron
     Importance: Medium
     Assignee: Miguel Lavalle (minsel)
         Status: New

** Changed in: neutron
     Assignee: (unassigned) => Miguel Lavalle (minsel)

** Changed in: neutron
   Importance: Undecided => Medium

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

Title:
  Neutron server producing tracebacks with 'L3RouterPlugin' object has
  no attribute 'is_distributed_router'  when DVR is enabled

Status in neutron:
  New

Bug description:
  In environments where DVR is enabled and when an instance with
  floating IPs is moved from one host to another (due to live migration
  or shelving / un-shelvinng) the Neutron server produces the following
  traceback:

  Traceback (most recent call last):
    File "/usr/local/lib/python2.7/dist-packages/neutron_lib/callbacks/manager.py", line 197, in _notify_loop
      callback(resource, event, trigger, **kwargs)
    File "/opt/stack/new/neutron/neutron/db/l3_dvrscheduler_db.py", line 460, in _notify_l3_agent_port_update
       l3plugin.is_distributed_router(fip['router_id']) and
  AttributeError: 'L3RouterPlugin' object has no attribute 'is_distributed_router'

  The problem was introduced by this patch:
  https://review.openstack.org/#/c/579058. Line
  https://review.openstack.org/#/c/579058/3/neutron/db/l3_dvrscheduler_db.py@460
  wrongly tries to call is_distributed_router as though it is a method
  in the L3 plugin. The real intent was to call it from module
  neutron/db/l3_dvr_db.py, since it is defined there outside any classes

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


Follow ups