From 0b4ac987cd979f24d3096e8b7fb925bce8695a61 Mon Sep 17 00:00:00 2001 From: fys <40801205+Fengys123@users.noreply.github.com> Date: Tue, 25 Jul 2023 15:32:10 +0800 Subject: [PATCH] refactor: arrange lease kvs randomly in lease_based selector (#2028) * refactor: arrange lease kvs randomly in lease_based selector * fix: cr --- src/meta-srv/src/selector/lease_based.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/meta-srv/src/selector/lease_based.rs b/src/meta-srv/src/selector/lease_based.rs index 3e45e76c61..83a4260510 100644 --- a/src/meta-srv/src/selector/lease_based.rs +++ b/src/meta-srv/src/selector/lease_based.rs @@ -13,6 +13,8 @@ // limitations under the License. use api::v1::meta::Peer; +use rand::seq::SliceRandom; +use rand::thread_rng; use crate::error::Result; use crate::lease; @@ -34,9 +36,7 @@ impl Selector for LeaseBasedSelector { .into_iter() .collect(); - // TODO(jiachun): At the moment we are just pushing the latest to the forefront, - // and it is better to use load-based strategies in the future. - lease_kvs.sort_by(|a, b| b.1.timestamp_millis.cmp(&a.1.timestamp_millis)); + lease_kvs.shuffle(&mut thread_rng()); let peers = lease_kvs .into_iter()