The column was not tracked before while it should. The column includes
many ovn-controller global configurations that could impact the way
flows are computed. It worked before because lots of the configurations
are also populated to OVN-SB DB's chassis table, and as a result the SB
DB change would notify back to the ovn-controller itself, thus
triggering a recompute to make the configure change effective. However,
this is not the way it is supposed to work. We should track the
open_vswitch:external_ids column directly, and the I-P engine would
immediately recompute and apply the change.

Fixes: ca278d98a4f5 ("ovn-controller: Initial use of incremental engine - quiet 
mode.")
Signed-off-by: Han Zhou <[email protected]>
---
 controller/ovn-controller.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/controller/ovn-controller.c b/controller/ovn-controller.c
index e9f5149a9..571effa68 100644
--- a/controller/ovn-controller.c
+++ b/controller/ovn-controller.c
@@ -935,7 +935,6 @@ ctrl_register_ovs_idl(struct ovsdb_idl *ovs_idl)
      * in OVSDB IDL, we need to be careful about the order so that the "track"
      * calls are after the "non-track" calls. */
     ovsdb_idl_add_table(ovs_idl, &ovsrec_table_open_vswitch);
-    ovsdb_idl_add_column(ovs_idl, &ovsrec_open_vswitch_col_external_ids);
     ovsdb_idl_add_column(ovs_idl, &ovsrec_open_vswitch_col_other_config);
     ovsdb_idl_add_column(ovs_idl, &ovsrec_open_vswitch_col_bridges);
     ovsdb_idl_add_column(ovs_idl, &ovsrec_open_vswitch_col_datapaths);
@@ -960,6 +959,7 @@ ctrl_register_ovs_idl(struct ovsdb_idl *ovs_idl)
     bfd_register_ovs_idl(ovs_idl);
     physical_register_ovs_idl(ovs_idl);
     vif_plug_register_ovs_idl(ovs_idl);
+    ovsdb_idl_track_add_column(ovs_idl, &ovsrec_open_vswitch_col_external_ids);
     ovsdb_idl_track_add_column(ovs_idl, &ovsrec_interface_col_name);
     ovsdb_idl_track_add_column(ovs_idl, &ovsrec_interface_col_bfd);
     ovsdb_idl_track_add_column(ovs_idl, &ovsrec_interface_col_bfd_status);
-- 
2.30.2

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to