From edee4bc176ba2856bf9fc66b60082fbc84e2d0ea Mon Sep 17 00:00:00 2001 From: Artyom Sidorenko Date: Wed, 23 Nov 2022 05:11:49 +0300 Subject: [PATCH] remove comms --- wavesexchange_repos/src/circuit_breaker/mod.rs | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/wavesexchange_repos/src/circuit_breaker/mod.rs b/wavesexchange_repos/src/circuit_breaker/mod.rs index 4ed0fad..947f0ca 100644 --- a/wavesexchange_repos/src/circuit_breaker/mod.rs +++ b/wavesexchange_repos/src/circuit_breaker/mod.rs @@ -1,10 +1,3 @@ -/* -послать запрос к удалённому ресурсу -если пришла ошибка соединения, то зафиксировать и вернуть ошибку в Result -если разрывы соединений продолжаются, выкинуть панику (или вызвать соотв обработчик) -разрывы соединений: - разные бд (pg, redis), разные пулы (bb8, deadpool, r2d2), одиночный запрос, возможность расширения -*/ pub mod config; pub mod error; @@ -25,7 +18,7 @@ pub trait SharedFn: Fn() -> S + Send + Sync + 'static {} impl SharedFn for T where T: Fn() -> S + Send + Sync + 'static {} pub struct CircuitBreaker { - max_timespan: Duration, // максимальный временной промежуток, в котором будут считаться ошибки + max_timespan: Duration, max_err_count_per_timespan: NonZeroUsize, init_fn: Box>, state: RwLock>, @@ -33,7 +26,7 @@ pub struct CircuitBreaker { pub struct CBState { data_source: Arc, - err_count: usize, // current errors count + err_count: usize, first_err_ts: Option, } @@ -110,7 +103,6 @@ impl CircuitBreaker { pub async fn query(&self, query_fn: F) -> Result where - //todo: figure out how to FnOnce(&S) F: FnOnce(Arc) -> Fut, Fut: Future>, {