Cli: use get_inflation_rewards and limit epochs queried (#16408)

* Fix block-with-limit when not finalized blocks found

* Enable confirmed commitment in getInflationReward

* Use get_inflation_rewards in cli

* Line up rewards output

* Add range validator

* Change cli epoch arg -> num epochs

* Add solana inflation rewards subcommand

* Consolidate epoch rewards meta
This commit is contained in:
Tyera Eulberg
2021-04-08 10:57:33 -06:00
committed by GitHub
parent 0e262aab3d
commit bb9d2fd07a
8 changed files with 353 additions and 126 deletions

View File

@ -423,7 +423,7 @@ impl JsonRpcRequestProcessor {
let first_confirmed_block = if let Ok(Some(first_confirmed_block)) = self
.get_confirmed_block(
first_confirmed_block_in_epoch,
Some(RpcConfirmedBlockConfig::rewards_only().into()),
Some(RpcConfirmedBlockConfig::rewards_with_commitment(config.commitment).into()),
) {
first_confirmed_block
} else {
@ -1001,7 +1001,10 @@ impl JsonRpcRequestProcessor {
// Maybe add confirmed blocks
if commitment.is_confirmed() && blocks.len() < limit {
let last_element = blocks.last().cloned().unwrap_or_default();
let last_element = blocks
.last()
.cloned()
.unwrap_or_else(|| start_slot.saturating_sub(1));
let confirmed_bank = self.bank(Some(CommitmentConfig::confirmed()));
let mut confirmed_blocks = confirmed_bank
.status_cache_ancestors()