Jelajahi Sumber

In KVServer, save the join handle instead of the Raft copy.

Jing Yang 3 tahun lalu
induk
melakukan
e80c03ceb8
1 mengubah file dengan 2 tambahan dan 2 penghapusan
  1. 2 2
      kvraft/src/server.rs

+ 2 - 2
kvraft/src/server.rs

@@ -516,11 +516,11 @@ impl KVServer {
         // Drop all read requests.
         self.state.lock().index_subscribers.drain();
 
-        let rf = self.raft().clone();
+        let raft_join_handle = self.raft().clone().kill();
         // We must drop self to remove the only clone of raft, so that
         // `rf.kill()` does not block.
         drop(self);
-        rf.kill().join();
+        raft_join_handle.join();
         // The process_command thread will exit, after Raft drops the reference
         // to the sender.
     }