diff --git a/crates/hamgrd/src/actors/ha_scope/base.rs b/crates/hamgrd/src/actors/ha_scope/base.rs index 78649102..082bfca5 100644 --- a/crates/hamgrd/src/actors/ha_scope/base.rs +++ b/crates/hamgrd/src/actors/ha_scope/base.rs @@ -160,6 +160,11 @@ impl HaScopeBase { } }; + if kfv.operation == KeyOperation::Del { + debug!("Ignoring DASH_HA_SCOPE_STATE deletion for key={}", kfv.key); + return None; + } + match swss_serde::from_field_values(&kfv.field_values) { Ok(state) => Some(state), Err(e) => { diff --git a/crates/hamgrd/src/actors/ha_set.rs b/crates/hamgrd/src/actors/ha_set.rs index de71063e..969d9bca 100644 --- a/crates/hamgrd/src/actors/ha_set.rs +++ b/crates/hamgrd/src/actors/ha_set.rs @@ -157,6 +157,11 @@ impl HaSetActor { } }; + if kfv.operation == KeyOperation::Del { + debug!("Ignoring DASH_HA_SET_STATE deletion for key={}", kfv.key); + return None; + } + match swss_serde::from_field_values(&kfv.field_values) { Ok(state) => Some((kfv.key, state)), Err(e) => {