Commit 3cbfdfc1 authored by Li Wei's avatar Li Wei Committed by Willem Thiart
Browse files

DAOS-333 server: Fix recv AE response return code



When the calling replica isn't in the leader state,
raft_recv_appendentries_response() should return RAFT_ERR_NOT_LEADER
instead of -1.
Signed-off-by: default avatarLi Wei <wei.g.li@intel.com>
parent 37571ad1
...@@ -230,7 +230,7 @@ int raft_recv_appendentries_response(raft_server_t* me_, ...@@ -230,7 +230,7 @@ int raft_recv_appendentries_response(raft_server_t* me_,
return 0; return 0;
if (!raft_is_leader(me_)) if (!raft_is_leader(me_))
return -1; return RAFT_ERR_NOT_LEADER;
/* If response contains term T > currentTerm: set currentTerm = T /* If response contains term T > currentTerm: set currentTerm = T
and convert to follower (§5.3) */ and convert to follower (§5.3) */
......
...@@ -3074,7 +3074,7 @@ void TestRaft_leader_recv_appendentries_response_retry_only_if_leader(CuTest * t ...@@ -3074,7 +3074,7 @@ void TestRaft_leader_recv_appendentries_response_retry_only_if_leader(CuTest * t
aer.success = 1; aer.success = 1;
aer.current_idx = 1; aer.current_idx = 1;
aer.first_idx = 1; aer.first_idx = 1;
CuAssertTrue(tc, -1 == raft_recv_appendentries_response(r, raft_get_node(r, 2), &aer)); CuAssertTrue(tc, RAFT_ERR_NOT_LEADER == raft_recv_appendentries_response(r, raft_get_node(r, 2), &aer));
CuAssertTrue(tc, NULL == sender_poll_msg_data(sender)); CuAssertTrue(tc, NULL == sender_poll_msg_data(sender));
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment