From 654d70ec8d860e4f092035def6788e569d333ba9 Mon Sep 17 00:00:00 2001 From: Romain Ruetschi <106849+romac@users.noreply.github.com> Date: Thu, 14 Sep 2023 14:51:18 +0200 Subject: [PATCH] Skip frozen clients --- crates/relayer-cli/src/commands/evidence.rs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/crates/relayer-cli/src/commands/evidence.rs b/crates/relayer-cli/src/commands/evidence.rs index 0f0cab4645..7c465fff38 100644 --- a/crates/relayer-cli/src/commands/evidence.rs +++ b/crates/relayer-cli/src/commands/evidence.rs @@ -17,12 +17,13 @@ use ibc_relayer::chain::handle::{BaseChainHandle, ChainHandle}; use ibc_relayer::chain::requests::{IncludeProof, QueryHeight}; use ibc_relayer::chain::tracking::TrackedMsgs; use ibc_relayer::chain::ChainType; -use ibc_relayer::foreign_client::{ForeignClient, ForeignClientErrorDetail}; +use ibc_relayer::foreign_client::ForeignClient; use ibc_relayer::spawn::spawn_chain_runtime_with_modified_config; use ibc_relayer_types::applications::ics28_ccv::msgs::ccv_double_voting::MsgSubmitIcsConsumerDoubleVoting; use ibc_relayer_types::applications::ics28_ccv::msgs::ccv_misbehaviour::MsgSubmitIcsConsumerMisbehaviour; use ibc_relayer_types::clients::ics07_tendermint::header::Header as TendermintHeader; use ibc_relayer_types::clients::ics07_tendermint::misbehaviour::Misbehaviour as TendermintMisbehaviour; +use ibc_relayer_types::core::ics02_client::client_state::ClientState; use ibc_relayer_types::core::ics02_client::height::Height; use ibc_relayer_types::core::ics02_client::msgs::misbehaviour::MsgSubmitMisbehaviour; use ibc_relayer_types::core::ics24_host::identifier::{ChainId, ClientId}; @@ -430,12 +431,6 @@ fn submit_light_client_attack_evidence( let mut msgs = match counterparty_client.wait_and_build_update_client(common_height) { Ok(msgs) => msgs, - - Err(e) if matches!(e.detail(), ForeignClientErrorDetail::ExpiredOrFrozen(_)) => { - info!("client is already frozen, skipping reporting of evidence to the node"); - return Ok(()); - } - Err(e) => { warn!("skipping update client message"); warn!( @@ -577,7 +572,12 @@ fn fetch_all_counterparty_clients( }; let counterparty_chain_id = client_state.chain_id(); - debug!("found counterparty client with id {client_id} on counterparty chain {counterparty_chain_id}"); + info!("found counterparty client with id {client_id} on counterparty chain {counterparty_chain_id}"); + + if client_state.is_frozen() { + info!("counterparty client {client_id} is already frozen, skipping..."); + continue; + } counterparty_clients.push((counterparty_chain_id, client_id.clone())); }