← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 2050236] [NEW] Automatic L3 Agent Failover does not work for HA Routers

 

Public bug reported:

When enabling allow_automatic_l3agent_failover in the neutron config,
neutron does not automatically reschedule routers with the HA parameter.

In
https://github.com/openstack/neutron/blob/master/neutron/db/agentschedulers_db.py#L131,
neutron loads all downed agents into the down_bindings list and then
iterates over it.

This list gets populated in this method:
https://github.com/openstack/neutron/blob/master/neutron/objects/l3agent.py#L55

Here, a SQL query gets generated that specifically excludes routers that
have the HA-parameter  (l3_attrs.RouterExtraAttributes.ha) set to
something other than false or NULL.

This behavior has always been the case and got introduced in
https://github.com/openstack/neutron/commit/7e51f2aea517e1431b9a860c45761c057710f5b2#diff-c1382d923846002c27484cca55e555689da1e08c22f1f8a0343726fd881e86ce.

Is there a specific reason for why HA routers get excluded? If not, this
conditional in the SQL statement can be removed.

** Affects: neutron
     Importance: Undecided
         Status: New

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

Title:
  Automatic L3 Agent Failover does not work for HA Routers

Status in neutron:
  New

Bug description:
  When enabling allow_automatic_l3agent_failover in the neutron config,
  neutron does not automatically reschedule routers with the HA
  parameter.

  In
  https://github.com/openstack/neutron/blob/master/neutron/db/agentschedulers_db.py#L131,
  neutron loads all downed agents into the down_bindings list and then
  iterates over it.

  This list gets populated in this method:
  https://github.com/openstack/neutron/blob/master/neutron/objects/l3agent.py#L55

  Here, a SQL query gets generated that specifically excludes routers
  that have the HA-parameter  (l3_attrs.RouterExtraAttributes.ha) set to
  something other than false or NULL.

  This behavior has always been the case and got introduced in
  https://github.com/openstack/neutron/commit/7e51f2aea517e1431b9a860c45761c057710f5b2#diff-c1382d923846002c27484cca55e555689da1e08c22f1f8a0343726fd881e86ce.

  Is there a specific reason for why HA routers get excluded? If not,
  this conditional in the SQL statement can be removed.

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



Follow ups