layout: refactor to use a RwLock on LayoutHistory

This commit is contained in:
Alex Auvolat
2023-11-09 14:12:05 +01:00
parent 19ef1ec8e7
commit bfb1845fdc
8 changed files with 82 additions and 92 deletions
+3 -8
View File
@@ -450,10 +450,8 @@ impl<'a> BucketHelper<'a> {
#[cfg(feature = "k2v")]
{
use garage_rpc::layout::LayoutHistory;
use std::sync::Arc;
let layout: Arc<LayoutHistory> = self.0.system.cluster_layout().clone();
// TODO: not only current
let node_id_vec = self.0.system.cluster_layout().current().node_ids().to_vec();
let k2vindexes = self
.0
.k2v
@@ -462,10 +460,7 @@ impl<'a> BucketHelper<'a> {
.get_range(
&bucket_id,
None,
Some((
DeletedFilter::NotDeleted,
layout.current().node_id_vec.clone(),
)),
Some((DeletedFilter::NotDeleted, node_id_vec)),
10,
EnumerationOrder::Forward,
)