Public bug reported:

When an OVN agent is deleted, the following exception is raised:
"""
ERROR neutron_lib.callbacks.manager Traceback (most recent call last):
ERROR neutron_lib.callbacks.manager   File 
"/opt/stack/neutron-lib/neutron_lib/callbacks/manager.py", line 189, in 
_notify_loop
ERROR neutron_lib.callbacks.manager     callback.method(resource, event, 
trigger, payload=payload)
ERROR neutron_lib.callbacks.manager   File 
"/opt/stack/neutron/neutron/db/agentschedulers_db.py", line 494, in 
auto_schedule_new_network_segments
ERROR neutron_lib.callbacks.manager     segments = segment_plugin.get_segments(
ERROR neutron_lib.callbacks.manager AttributeError: 'NoneType' object has no 
attribute 'get_segments'
ERROR neutron_lib.callbacks.manager
"""

The problem is that the worker that receives the command to delete the
agent is deleting the agent cache entry in this call, in
``OVNMechanismDriver.delete_agent``. This method is also generating an
OVN SB event writing in the ``SB_Global`` SB table to inform to other
agents about this deletion. When this event is received, each worker
updates its own local agent cache correspondingly.

The problem is that the same worker that is issuing this event is also
receiving it, and thus the worker tries to delete the agent cache twice.
That was added in [1] but is not needed.

NOTE: backport the fix up to 2023.2 (same as [1]).

[1]https://review.opendev.org/c/openstack/neutron/+/883607/3/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py#1421

** Affects: neutron
     Importance: Undecided
         Status: New

** Description changed:

  When an OVN agent is deleted, the following exception is raised:
  """
  ERROR neutron_lib.callbacks.manager Traceback (most recent call last):
  ERROR neutron_lib.callbacks.manager   File 
"/opt/stack/neutron-lib/neutron_lib/callbacks/manager.py", line 189, in 
_notify_loop
  ERROR neutron_lib.callbacks.manager     callback.method(resource, event, 
trigger, payload=payload)
  ERROR neutron_lib.callbacks.manager   File 
"/opt/stack/neutron/neutron/db/agentschedulers_db.py", line 494, in 
auto_schedule_new_network_segments
  ERROR neutron_lib.callbacks.manager     segments = 
segment_plugin.get_segments(
  ERROR neutron_lib.callbacks.manager AttributeError: 'NoneType' object has no 
attribute 'get_segments'
- ERROR neutron_lib.callbacks.manager 
+ ERROR neutron_lib.callbacks.manager
  """
  
  The problem is that the worker that receives the command to delete the
  agent is deleting the agent cache entry in this call, in
  ``OVNMechanismDriver.delete_agent``. This method is also generating an
  OVN SB event writing in the ``SB_Global`` SB table to inform to other
  agents about this deletion. When this event is received, each worker
  updates its own local agent cache correspondingly.
  
  The problem is that the same worker that is issuing this event is also
  receiving it, and thus the worker tries to delete the agent cache twice.
  That was added in [1] but is not needed.
  
+ NOTE: backport the fix up to 2023.2 (same as [1]).
+ 
  
[1]https://review.opendev.org/c/openstack/neutron/+/883607/3/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py#1421

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

Title:
  [OVN] OVN agent deletion raises an error in the agent cache

Status in neutron:
  New

Bug description:
  When an OVN agent is deleted, the following exception is raised:
  """
  ERROR neutron_lib.callbacks.manager Traceback (most recent call last):
  ERROR neutron_lib.callbacks.manager   File 
"/opt/stack/neutron-lib/neutron_lib/callbacks/manager.py", line 189, in 
_notify_loop
  ERROR neutron_lib.callbacks.manager     callback.method(resource, event, 
trigger, payload=payload)
  ERROR neutron_lib.callbacks.manager   File 
"/opt/stack/neutron/neutron/db/agentschedulers_db.py", line 494, in 
auto_schedule_new_network_segments
  ERROR neutron_lib.callbacks.manager     segments = 
segment_plugin.get_segments(
  ERROR neutron_lib.callbacks.manager AttributeError: 'NoneType' object has no 
attribute 'get_segments'
  ERROR neutron_lib.callbacks.manager
  """

  The problem is that the worker that receives the command to delete the
  agent is deleting the agent cache entry in this call, in
  ``OVNMechanismDriver.delete_agent``. This method is also generating an
  OVN SB event writing in the ``SB_Global`` SB table to inform to other
  agents about this deletion. When this event is received, each worker
  updates its own local agent cache correspondingly.

  The problem is that the same worker that is issuing this event is also
  receiving it, and thus the worker tries to delete the agent cache
  twice. That was added in [1] but is not needed.

  NOTE: backport the fix up to 2023.2 (same as [1]).

  
[1]https://review.opendev.org/c/openstack/neutron/+/883607/3/neutron/plugins/ml2/drivers/ovn/mech_driver/mech_driver.py#1421

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


-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to