Reviewed: https://review.opendev.org/c/openstack/ovsdbapp/+/834544 Committed: https://opendev.org/openstack/ovsdbapp/commit/06207b33e3317b984868aeb67aaba4bb8423e710 Submitter: "Zuul (22348)" Branch: master
commit 06207b33e3317b984868aeb67aaba4bb8423e710 Author: Terry Wilson <[email protected]> Date: Mon Mar 21 19:36:42 2022 +0000 Fix broken behavior after recent OVS update After the monitor_cond_since/update3 support patch in ovs (46d44cf3be0), directly setting table.condition is broken. This isn't something that was every truly supported. Ultimately, it would be good if we could make this code less dependent on exactly what happens in Idl.__init__()--maybe adding an update_tables() method in python-ovs. To avoid stomping on the state stored in ConditionState, instead of replacing Idl.tables, this removes deletions and adds new tables that were passed. Existing tables are left alone. Closes-Bug: 1965819 Change-Id: Iad0d7472a7adce4a79111f94a2f33fc5b1a5c530 ** Changed in: ovsdbapp Status: In Progress => 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/1965819 Title: list object has no attribute 'acked' Status in networking-ovn: New Status in neutron: In Progress Status in ovsdbapp: Fix Released Bug description: Using python-ovs master, there are errors such as: ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn [None req-81ffbcd9-59d1-498a-aea2-d57e0d515ff2 None None] OVS database connection to OVN_Southbound failed with error: ''list' object has no attribute 'acked''. Verify that the OVS and OVN services are available and that the 'ovn_nb_connection' and 'ovn_sb_connection' configuration options are correct.: AttributeError: 'list' object has no attribute 'acked' ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn Traceback (most recent call last): ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/impl_idl_ovn.py", line 127, in start_connection ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn self.ovsdb_connection.start() ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn File "/usr/local/lib/python3.10/site-packages/ovsdbapp/backend/ovs_idl/connection.py", line 83, in start ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn idlutils.wait_for_change(self.idl, self.timeout) ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn File "/opt/stack/neutron/neutron/plugins/ml2/drivers/ovn/mech_driver/ovsdb/impl_idl_ovn.py", line 53, in wait_for_change ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn while idl_.change_seqno == seqno and not idl_.run(): ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn File "/opt/stack/ovs/python/ovs/db/idl.py", line 506, in run ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn self.__send_monitor_request() ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn File "/opt/stack/ovs/python/ovs/db/idl.py", line 814, in __send_monitor_request ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn not ConditionState.is_true(table.condition.acked)): ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn AttributeError: 'list' object has no attribute 'acked' ERROR neutron.plugins.ml2.drivers.ovn.mech_driver.ovsdb.impl_idl_ovn ovsdbapp, neutron, and networking-ovn all directly set 'table.condition' which is kinda-sorta not really public API. The type of this variable changed with https://github.com/openvswitch/ovs/commit/46d44cf3be0dbf4a44cebea3b279b3d16a326796 and there has been some breakage. To manage notifications about this bug go to: https://bugs.launchpad.net/networking-ovn/+bug/1965819/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

