From 913b739c8fea8e9b14d3785371c8e4f48723dbd6 Mon Sep 17 00:00:00 2001 From: Gris Ge Date: Tue, 18 Aug 2020 17:55:12 +0800 Subject: [PATCH] ovsdb: Allowing remove all ports from OVS bridge When removing all ports from OVS bridge, the OVSDB will have no information regarding this bridge, which cause OVSDB failed to find the correct row. Silently ignore row not found failure and let verification stage do the work. Signed-off-by: Gris Ge --- libnmstate/plugins/nmstate_plugin_ovsdb.py | 8 -------- 1 file changed, 8 deletions(-) diff --git a/libnmstate/plugins/nmstate_plugin_ovsdb.py b/libnmstate/plugins/nmstate_plugin_ovsdb.py index 12ab10d..f667e8f 100644 --- a/libnmstate/plugins/nmstate_plugin_ovsdb.py +++ b/libnmstate/plugins/nmstate_plugin_ovsdb.py @@ -222,19 +222,11 @@ class NmstateOvsdbPlugin(NmstatePlugin): def _db_write(self, changes): changes_index = {change.row_name: change for change in changes} changed_tables = set(change.table_name for change in changes) - updated_names = [] for changed_table in changed_tables: for row in self._idl.tables[changed_table].rows.values(): if row.name in changes_index: change = changes_index[row.name] setattr(row, change.column_name, change.column_value) - updated_names.append(change.row_name) - new_rows = set(changes_index.keys()) - set(updated_names) - if new_rows: - raise NmstatePluginError( - f"BUG: row {new_rows} does not exists in OVS DB " - "and currently we don't create new row" - ) def _start_transaction(self): self._transaction = Transaction(self._idl) -- 2.28.0