From 176054c3dbc938b4a971f4d30ec6c656fa0b4e15 Mon Sep 17 00:00:00 2001 From: Georgy Moshkin <gmoshkin@picodata.io> Date: Wed, 14 Dec 2022 16:22:13 +0300 Subject: [PATCH] refactor(governor): Loop::RETRY_TIMEOUT --- src/governor/mod.rs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/governor/mod.rs b/src/governor/mod.rs index ab4cc59d33..8da1b77fd6 100644 --- a/src/governor/mod.rs +++ b/src/governor/mod.rs @@ -42,6 +42,7 @@ pub(crate) use migration::waiting_migrations; impl Loop { const SYNC_TIMEOUT: Duration = Duration::from_secs(10); + const RETRY_TIMEOUT: Duration = Duration::from_millis(250); async fn iter_fn( Args { @@ -84,7 +85,7 @@ impl Loop { Err(e) => { tlog!(Warning, "failed constructing an action plan: {e}"); // TODO don't hard code timeout - event::wait_timeout(Event::TopologyChanged, Duration::from_millis(500)).unwrap(); + event::wait_timeout(Event::TopologyChanged, Loop::RETRY_TIMEOUT).unwrap(); return Continue; } ); @@ -107,7 +108,7 @@ impl Loop { Plan::TransferLeadership(TransferLeadership { to }) => { tlog!(Info, "transferring leadership to {}", to.instance_id); node.transfer_leadership_and_yield(to.raft_id); - event::wait_timeout(Event::TopologyChanged, Duration::from_secs(1)).unwrap(); + event::wait_timeout(Event::TopologyChanged, Loop::RETRY_TIMEOUT).unwrap(); } Plan::TransferMastership(TransferMastership { to, rpc, op }) => { @@ -129,7 +130,7 @@ impl Loop { "master_id" => %instance_id, "replicaset_id" => %replicaset_id, ); - event::wait_timeout(Event::TopologyChanged, Duration::from_secs(1)).unwrap(); + event::wait_timeout(Event::TopologyChanged, Loop::RETRY_TIMEOUT).unwrap(); return Continue; } @@ -145,7 +146,7 @@ impl Loop { "master_id" => %instance_id, "replicaset_id" => %replicaset_id, ); - event::wait_timeout(Event::TopologyChanged, Duration::from_secs(1)).unwrap(); + event::wait_timeout(Event::TopologyChanged, Loop::RETRY_TIMEOUT).unwrap(); return Continue; } } @@ -179,7 +180,7 @@ impl Loop { .await; if let Err(e) = res { tlog!(Warning, "failed reconfiguring sharding: {e}"); - event::wait_timeout(Event::TopologyChanged, Duration::from_secs(1)).unwrap(); + event::wait_timeout(Event::TopologyChanged, Loop::RETRY_TIMEOUT).unwrap(); return Continue; } @@ -192,7 +193,7 @@ impl Loop { tlog!(Warning, "failed handling instance grade change: {e}"; "instance_id" => %instance_id, ); - event::wait_timeout(Event::TopologyChanged, Duration::from_secs(1)).unwrap(); + event::wait_timeout(Event::TopologyChanged, Loop::RETRY_TIMEOUT).unwrap(); return Continue; } } @@ -214,8 +215,7 @@ impl Loop { .await; if let Err(e) = res { tlog!(Warning, "failed syncing raft log: {e}"; "instance_id" => %instance_id); - event::wait_timeout(Event::TopologyChanged, Duration::from_millis(250)) - .unwrap(); + event::wait_timeout(Event::TopologyChanged, Loop::RETRY_TIMEOUT).unwrap(); return Continue; } } -- GitLab