Refactor epoch reward 3 (#27259)
* refactor: extract store_stake_accounts fn * refactor: extract store_vote_account fn * refactor: extract reward history update fn * clippy: slice * clippy: slice Co-authored-by: haoran <haoran@mbook>
This commit is contained in:
parent
544a957ad7
commit
f617374b0b
|
@ -3210,19 +3210,8 @@ impl Bank {
|
|||
metrics.redeem_rewards_us += m.as_us();
|
||||
|
||||
self.store_stake_accounts(&stake_rewards, metrics);
|
||||
let mut vote_rewards = self.store_vote_accounts(vote_account_rewards, metrics);
|
||||
|
||||
let additional_reserve = stake_rewards.len() + vote_rewards.len();
|
||||
{
|
||||
let mut rewards = self.rewards.write().unwrap();
|
||||
rewards.reserve(additional_reserve);
|
||||
rewards.append(&mut vote_rewards);
|
||||
stake_rewards
|
||||
.into_iter()
|
||||
.filter(|x| x.get_stake_reward() > 0)
|
||||
.for_each(|x| rewards.push((x.stake_pubkey, x.stake_reward_info)));
|
||||
}
|
||||
|
||||
let vote_rewards = self.store_vote_accounts(vote_account_rewards, metrics);
|
||||
self.update_reward_history(stake_rewards, vote_rewards);
|
||||
point_value.rewards as f64 / point_value.points as f64
|
||||
}
|
||||
|
||||
|
@ -3278,6 +3267,21 @@ impl Bank {
|
|||
vote_rewards
|
||||
}
|
||||
|
||||
fn update_reward_history(
|
||||
&self,
|
||||
stake_rewards: Vec<StakeReward>,
|
||||
mut vote_rewards: Vec<(Pubkey, RewardInfo)>,
|
||||
) {
|
||||
let additional_reserve = stake_rewards.len() + vote_rewards.len();
|
||||
let mut rewards = self.rewards.write().unwrap();
|
||||
rewards.reserve(additional_reserve);
|
||||
rewards.append(&mut vote_rewards);
|
||||
stake_rewards
|
||||
.into_iter()
|
||||
.filter(|x| x.get_stake_reward() > 0)
|
||||
.for_each(|x| rewards.push((x.stake_pubkey, x.stake_reward_info)));
|
||||
}
|
||||
|
||||
fn update_recent_blockhashes_locked(&self, locked_blockhash_queue: &BlockhashQueue) {
|
||||
#[allow(deprecated)]
|
||||
self.update_sysvar_account(&sysvar::recent_blockhashes::id(), |account| {
|
||||
|
|
Loading…
Reference in New Issue