const struct sbrec_port_binding *binding_rec;
chassis_rec = get_chassis(ctx->ovnsb_idl, chassis_id);
- if (!chassis_rec) {
- return;
- }
struct shash lports = SHASH_INITIALIZER(&lports);
if (br_int) {
if (iface_rec && ctx->ovs_idl_txn) {
update_qos(iface_rec, binding_rec);
}
- if (binding_rec->chassis == chassis_rec) {
- continue;
- }
- if (ctx->ovnsb_idl_txn) {
+ if (ctx->ovnsb_idl_txn && chassis_rec
+ && binding_rec->chassis != chassis_rec) {
if (binding_rec->chassis) {
VLOG_INFO("Changing chassis for lport %s from %s to %s.",
binding_rec->logical_port,
}
sbrec_port_binding_set_chassis(binding_rec, chassis_rec);
}
- } else if (binding_rec->chassis == chassis_rec) {
+ } else if (chassis_rec && binding_rec->chassis == chassis_rec) {
if (ctx->ovnsb_idl_txn) {
VLOG_INFO("Releasing lport %s from this chassis.",
binding_rec->logical_port);