Signed-off-by: Vladislav Odintsov <[email protected]> Regards, Vladislav Odintsov
> On 9 Jul 2021, at 16:55, Vladislav Odintsov <[email protected]> wrote: > > Acked-by: Vladislav Odintsov <[email protected]> > > Regards, > Vladislav Odintsov > >> On 9 Jul 2021, at 16:10, Vladislav Odintsov <[email protected]> wrote: >> >> From: Dumitru Ceara <[email protected]> >> >> Remove the use of sbrec_chassis_is_new() for uncommitted records. This >> is not the way IDL *_is_new() functions are supposed to be used. >> >> Note: With this change if the system-id changes there will be a >> transient error in ovn-controller due to ovn-controller trying to insert >> a new chassis_private record. This is due to the fact that the view of >> the chassis_private table changes and only chassis_private records >> matching the new chassis name are sent to ovn-controller. This gets >> corrected though in the next iteration of the ovn-controller processing >> loop. >> >> Suggested-by: Han Zhou <[email protected]> >> Reported-at: >> https://mail.openvswitch.org/pipermail/ovs-dev/2020-October/376339.html >> Fixes: dce1af31b550 ("chassis: Fix chassis_private record updates when the >> system-id changes.") >> Signed-off-by: Dumitru Ceara <[email protected]> >> Acked-by: Mark Gray <[email protected]> >> Signed-off-by: Han Zhou <[email protected]> >> (cherry picked from commit 1f915da95dc725131b7df094d494af9fda88ea92) >> --- >> controller/ovn-controller.c | 6 +++--- >> 1 file changed, 3 insertions(+), 3 deletions(-) >> >> diff --git a/controller/ovn-controller.c b/controller/ovn-controller.c >> index 3665c7b4e..b154a8486 100644 >> --- a/controller/ovn-controller.c >> +++ b/controller/ovn-controller.c >> @@ -181,7 +181,7 @@ update_sb_monitors(struct ovsdb_idl *ovnsb_idl, >> * chassis */ >> sbrec_port_binding_add_clause_type(&pb, OVSDB_F_EQ, "chassisredirect"); >> sbrec_port_binding_add_clause_type(&pb, OVSDB_F_EQ, "external"); >> - if (chassis && !sbrec_chassis_is_new(chassis)) { >> + if (chassis) { >> /* This should be mostly redundant with the other clauses for port >> * bindings, but it allows us to catch any ports that are assigned to >> * us but should not be. That way, we can clear their chassis >> @@ -205,8 +205,8 @@ update_sb_monitors(struct ovsdb_idl *ovnsb_idl, >> &chassis->header_.uuid); >> >> /* Monitors Chassis_Private record for current chassis only. */ >> - sbrec_chassis_private_add_clause_chassis(&chprv, OVSDB_F_EQ, >> - &chassis->header_.uuid); >> + sbrec_chassis_private_add_clause_name(&chprv, OVSDB_F_EQ, >> + chassis->name); >> } else { >> /* During initialization, we monitor all records in Chassis_Private so >> * that we don't try to recreate existing ones. */ >> -- >> 2.30.0 >> > > _______________________________________________ > dev mailing list > [email protected] > https://mail.openvswitch.org/mailman/listinfo/ovs-dev _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
