From b658bf51a03db30dc1415f753c2a989fe2e49a5c Mon Sep 17 00:00:00 2001
From: Georgy Moshkin <gmoshkin@picodata.io>
Date: Tue, 6 Dec 2022 12:59:26 +0300
Subject: [PATCH] refactor(storage): Clusterwide { state: State } ->
 Clusterwide { properties: Properties }

---
 src/governor/mod.rs | 11 +++++++----
 src/storage.rs      | 12 ++++++------
 src/traft/node.rs   |  2 +-
 3 files changed, 14 insertions(+), 11 deletions(-)

diff --git a/src/governor/mod.rs b/src/governor/mod.rs
index 87298f317d..4439675948 100644
--- a/src/governor/mod.rs
+++ b/src/governor/mod.rs
@@ -362,7 +362,7 @@ impl Loop {
                     if let Some(replicaset) = storage.replicasets.get(&instance.replicaset_id)? {
                         Cow::Owned(replicaset.master_id)
                     } else {
-                        let vshard_bootstrapped = storage.state.vshard_bootstrapped()?;
+                        let vshard_bootstrapped = storage.properties.vshard_bootstrapped()?;
                         let req = OpDML::insert(
                             ClusterwideSpace::Replicaset,
                             &Replicaset {
@@ -413,7 +413,7 @@ impl Loop {
         });
         if let Some(instance) = to_shard {
             let res = (|| -> Result<()> {
-                let vshard_bootstrapped = storage.state.vshard_bootstrapped()?;
+                let vshard_bootstrapped = storage.properties.vshard_bootstrapped()?;
                 let commit = raft_storage.commit()?.unwrap();
                 let reqs = maybe_responding(&instances).map(|instance| {
                     (
@@ -585,7 +585,7 @@ impl Loop {
 
         ////////////////////////////////////////////////////////////////////////
         // applying migrations
-        let desired_schema_version = storage.state.desired_schema_version().unwrap();
+        let desired_schema_version = storage.properties.desired_schema_version().unwrap();
         let replicasets = storage.replicasets.iter().unwrap().collect::<Vec<_>>();
         let mut migrations = storage.migrations.iter().unwrap().collect::<Vec<_>>();
         let commit = raft_storage.commit().unwrap().unwrap();
@@ -737,7 +737,10 @@ fn get_weight_changes<'p>(
     instances: impl IntoIterator<Item = &'p Instance>,
     storage: &Clusterwide,
 ) -> Option<ReplicasetWeights> {
-    let replication_factor = storage.state.replication_factor().expect("storage error");
+    let replication_factor = storage
+        .properties
+        .replication_factor()
+        .expect("storage error");
     let replicaset_weights = storage.replicasets.weights().expect("storage error");
     let mut replicaset_sizes = HashMap::new();
     let mut weight_changes = HashMap::new();
diff --git a/src/storage.rs b/src/storage.rs
index 6945ca5862..2ff22a95d7 100644
--- a/src/storage.rs
+++ b/src/storage.rs
@@ -83,7 +83,7 @@ impl ClusterwideSpace {
 
 #[derive(Clone, Debug)]
 pub struct Clusterwide {
-    pub state: State,
+    pub properties: Properties,
     pub instances: Instances,
     pub peer_addresses: PeerAddresses,
     pub replicasets: Replicasets,
@@ -93,7 +93,7 @@ pub struct Clusterwide {
 impl Clusterwide {
     pub fn new() -> tarantool::Result<Self> {
         Ok(Self {
-            state: State::new()?,
+            properties: Properties::new()?,
             instances: Instances::new()?,
             peer_addresses: PeerAddresses::new()?,
             replicasets: Replicasets::new()?,
@@ -103,16 +103,16 @@ impl Clusterwide {
 }
 
 ////////////////////////////////////////////////////////////////////////////////
-// State
+// Properties
 ////////////////////////////////////////////////////////////////////////////////
 
-/// A struct for accessing storage of the cluster-wide key-value state
+/// A struct for accessing storage of the cluster-wide key-value properties
 #[derive(Clone, Debug)]
-pub struct State {
+pub struct Properties {
     space: Space,
 }
 
-impl State {
+impl Properties {
     const SPACE_NAME: &'static str = ClusterwideSpace::Property.as_str();
     const INDEX_PRIMARY: &'static str = "pk";
 
diff --git a/src/traft/node.rs b/src/traft/node.rs
index b15397d56f..d08c5609c8 100644
--- a/src/traft/node.rs
+++ b/src/traft/node.rs
@@ -401,7 +401,7 @@ impl NodeImpl {
                 }
                 let replication_factor = self
                     .storage
-                    .state
+                    .properties
                     .get(PropertyName::ReplicationFactor)?
                     .ok_or_else(|| Error::other("missing replication_factor value in storage"))?;
                 Topology::new(instances).with_replication_factor(replication_factor)
-- 
GitLab