瀏覽代碼

Minor fixes: space, deserialization requirement, &Arc<>.

1. Extra line between functions.
2. request_vote does not require Command to be deserializable.
3. &Arc<T> can usually be replaced with &T.
Jing Yang 5 年之前
父節點
當前提交
552106e1c2
共有 2 個文件被更改,包括 4 次插入3 次删除
  1. 2 2
      src/lib.rs
  2. 2 1
      src/rpcs.rs

+ 2 - 2
src/lib.rs

@@ -577,7 +577,7 @@ where
     }
 
     fn build_heartbeat(
-        rf: &Arc<Mutex<RaftState<Command>>>,
+        rf: &Mutex<RaftState<Command>>,
     ) -> Option<AppendEntriesArgs<Command>> {
         let rf = rf.lock();
 
@@ -748,7 +748,7 @@ where
     }
 
     fn build_append_entries(
-        rf: &Arc<Mutex<RaftState<Command>>>,
+        rf: &Mutex<RaftState<Command>>,
         peer_index: usize,
     ) -> Option<AppendEntriesArgs<Command>> {
         let rf = rf.lock();

+ 2 - 1
src/rpcs.rs

@@ -10,7 +10,7 @@ use crate::{
 use serde::de::DeserializeOwned;
 use serde::Serialize;
 
-fn proxy_request_vote<Command: Clone + Serialize + DeserializeOwned>(
+fn proxy_request_vote<Command: Clone + Serialize>(
     raft: &Raft<Command>,
     data: RequestMessage,
 ) -> ReplyMessage {
@@ -24,6 +24,7 @@ fn proxy_request_vote<Command: Clone + Serialize + DeserializeOwned>(
             .expect("Serialization of reply should not fail"),
     )
 }
+
 fn proxy_append_entries<Command: Clone + Serialize + DeserializeOwned>(
     raft: &Raft<Command>,
     data: RequestMessage,