Skip to content

Commit c6fc712

Browse files
fix: process_kern_request needs guard to avoid looping
1 parent 385bab7 commit c6fc712

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

sorock/src/process/raft_process/responder.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,8 @@ impl RaftProcess {
4646

4747
rx.await?;
4848
} else {
49+
// Avoid looping.
50+
ensure!(self.driver.self_node_id() != leader_id);
4951
let conn = self.driver.connect(leader_id);
5052
conn.process_kern_request(req).await?;
5153
}
@@ -80,7 +82,7 @@ impl RaftProcess {
8082

8183
rx.await?
8284
} else {
83-
// This check is to avoid looping.
85+
// Avoid looping.
8486
ensure!(self.driver.self_node_id() != leader_id);
8587
let conn = self.driver.connect(leader_id);
8688
conn.process_user_read_request(req).await?
@@ -116,9 +118,8 @@ impl RaftProcess {
116118

117119
rx.await?
118120
} else {
119-
// This check is to avoid looping.
121+
// Avoid looping.
120122
ensure!(self.driver.self_node_id() != leader_id);
121-
122123
let conn = self.driver.connect(leader_id);
123124
conn.process_user_write_request(req).await?
124125
};

0 commit comments

Comments
 (0)