Chassis rows for VTEP physical switches are created by
ovn-controller-vtep, which never processes logical flows and therefore
never advertises any feature in other_config. northd code only
skipped remote chassis, so a single VTEP chassis disabled every
feature for the whole deployment.
The most visible effect is ct_no_masked_label being turned off, which
makes northd emit "ct_label.blocked" matches. That symbol was removed
in f1f5c34f1acf ("northd: Assume all chassis support the
"ct-no-masked-label" feature."), so any newer ovn-controller fails to
parse ct_label actions during a rolling upgrade from version < 24.09.
Skip VTEP chassis the same way remote ones are skipped.
[1]
https://github.com/ovn-org/ovn/commit/f1f5c34f1acfc01d625984e3b4ceeb840fb234b1
Fixes: 40fe94bd4d4c ("northd: Use ct_mark.blocked and ecmp_reply_port only when
all chassis support it.")
Signed-off-by: Alexandra Rukomoinikova <[email protected]>
---
northd/en-global-config.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/northd/en-global-config.c b/northd/en-global-config.c
index 4e6b07ebe..6dd5e0977 100644
--- a/northd/en-global-config.c
+++ b/northd/en-global-config.c
@@ -532,8 +532,14 @@ build_chassis_features(const struct sbrec_chassis_table
*sbrec_chassis_table,
SBREC_CHASSIS_TABLE_FOR_EACH (chassis, sbrec_chassis_table) {
/* Only consider local AZ chassis. Remote ones don't install
* flows generated by the local northd.
+ *
+ * Skip VTEP chassis too. Those are created by ovn-controller-vtep
+ * (which doesn't process logical flows at all) and therefore never
+ * advertise any feature in other_config. Taking them into account
+ * would disable features for the whole deployment.
*/
- if (smap_get_bool(&chassis->other_config, "is-remote", false)) {
+ if (smap_get_bool(&chassis->other_config, "is-remote", false) ||
+ smap_get_bool(&chassis->other_config, "is-vtep", false)) {
continue;
}
--
2.48.1
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev