From b721ffe7c411c6f17e67932b093f5de6fd78bbcc Mon Sep 17 00:00:00 2001
From: Georgy Moshkin <gmoshkin@picodata.io>
Date: Tue, 5 Nov 2024 16:13:50 +0300
Subject: [PATCH] fix: used to send RPC to Expelled instances in webui back-end

---
 src/http_server.rs | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/http_server.rs b/src/http_server.rs
index 7cd5735e69..cd7da4cd10 100644
--- a/src/http_server.rs
+++ b/src/http_server.rs
@@ -13,7 +13,7 @@ use crate::storage::ToEntryIter as _;
 use crate::tier::Tier;
 use crate::traft::network::ConnectionPool;
 use crate::util::Uppercase;
-use crate::{tlog, unwrap_ok_or};
+use crate::{has_states, tlog, unwrap_ok_or};
 
 const DEFAULT_TIMEOUT: std::time::Duration = std::time::Duration::from_secs(1);
 
@@ -190,6 +190,10 @@ async fn get_instances_data(
 ) -> HashMap<u64, InstanceDataResponse> {
     let mut fs = vec![];
     for instance in instances {
+        if has_states!(instance, Expelled -> *) {
+            continue;
+        }
+
         let res = pool.call_raw(&instance.name, ".proc_runtime_info", &(), DEFAULT_TIMEOUT);
         let future = unwrap_ok_or!(res,
             Err(e) => {
-- 
GitLab