From 53b8d0d528849cab8ab56e63999ceec2baeeaf24 Mon Sep 17 00:00:00 2001 From: carllin Date: Fri, 13 Mar 2020 15:15:13 -0700 Subject: [PATCH] Remove holding Poh lock (#8838) automerge --- core/src/cluster_info_vote_listener.rs | 3 ++- core/src/replay_stage.rs | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/core/src/cluster_info_vote_listener.rs b/core/src/cluster_info_vote_listener.rs index d4ac2b180f..3660424a66 100644 --- a/core/src/cluster_info_vote_listener.rs +++ b/core/src/cluster_info_vote_listener.rs @@ -325,7 +325,8 @@ impl ClusterInfoVoteListener { if exit.load(Ordering::Relaxed) { return Ok(()); } - if let Some(bank) = poh_recorder.lock().unwrap().bank() { + let poh_bank = poh_recorder.lock().unwrap().bank(); + if let Some(bank) = poh_bank { let last_ts = bank.last_vote_sync.load(Ordering::Relaxed); let (votes, new_ts) = cluster_info.read().unwrap().get_votes(last_ts); bank.last_vote_sync diff --git a/core/src/replay_stage.rs b/core/src/replay_stage.rs index e65c50c395..f300606670 100644 --- a/core/src/replay_stage.rs +++ b/core/src/replay_stage.rs @@ -445,7 +445,8 @@ impl ReplayStage { rewards_recorder_sender.clone(), ); - if let Some(bank) = poh_recorder.lock().unwrap().bank() { + let poh_bank = poh_recorder.lock().unwrap().bank(); + if let Some(bank) = poh_bank { Self::log_leader_change( &my_pubkey, bank.slot(),