From 3013895f71028538e2a4070b858b7201dec5de51 Mon Sep 17 00:00:00 2001 From: Patrick Ribbsaeter Date: Sat, 17 Oct 2026 18:21:49 +0200 Subject: [PATCH] Fix iterator invalidation in handle_append_entries_resp when srv_to_leave times out (#653) --- src/handle_append_entries.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/handle_append_entries.cxx b/src/handle_append_entries.cxx index 381e9dd..2aa1172 100644 --- a/src/handle_append_entries.cxx +++ b/src/handle_append_entries.cxx @@ -1167,13 +1167,14 @@ bool raft_server::try_update_precommit_index(ulong desired, const size_t MAX_ATT } void raft_server::handle_append_entries_resp(resp_msg& resp) { + check_srv_to_leave_timeout(); + peer_itor it = peers_.find(resp.get_src()); if (it == peers_.end()) { p_in("the response is from an unknown peer %d", resp.get_src()); return; } - check_srv_to_leave_timeout(); if ( srv_to_leave_ && srv_to_leave_->get_id() == resp.get_src() && srv_to_leave_->is_stepping_down() && -- 2.55.0.windows.3