removes staked-nodes updater service excessive locks on gossip (#29936)

This commit is contained in:
behzad nouri 2023-01-26 23:31:35 +00:00 committed by GitHub
parent 652955d053
commit efb8a53b28
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 11 additions and 15 deletions

View File

@ -128,18 +128,13 @@ impl StakedNodesUpdaterService {
ip_to_stake_map: &mut HashMap<IpAddr, u64>,
staked_map_overrides: &HashMap<Pubkey, u64>,
) {
for (id_override, stake_override) in staked_map_overrides.iter() {
if let Some(ip_override) =
cluster_info
.all_peers()
.into_iter()
.find_map(|(node, _seen_time)| {
if node.id == *id_override {
return Some(node.tvu.ip());
}
None
})
{
let nodes: HashMap<Pubkey, IpAddr> = cluster_info
.all_peers()
.into_iter()
.map(|(node, _)| (node.id, node.tvu.ip()))
.collect();
for (id_override, stake_override) in staked_map_overrides {
if let Some(&ip_override) = nodes.get(id_override) {
if let Some(previous_stake) = id_to_stake_map.get(id_override) {
*total_stake -= previous_stake;
}
@ -148,9 +143,10 @@ impl StakedNodesUpdaterService {
ip_to_stake_map.insert(ip_override, *stake_override);
} else {
error!(
"staked nodes overrides configuration for id {} with stake {} does not match existing IP. Skipping",
id_override, stake_override
);
"staked nodes overrides configuration for id \
{id_override} with stake {stake_override} does not \
match existing IP. Skipping",
);
}
}
}