diff --git a/cli/src/cluster_query.rs b/cli/src/cluster_query.rs index c5b859e5e5..94a599c6b1 100644 --- a/cli/src/cluster_query.rs +++ b/cli/src/cluster_query.rs @@ -735,7 +735,7 @@ pub fn process_get_block(rpc_client: &RpcClient, _config: &CliConfig, slot: Slot " - -".to_string() } else { format!( - "◎{:<12.4} {:>13.4}%", + "◎{:<12.4} {:>13.9}%", lamports_to_sol(reward.post_balance), reward.lamports.abs() as f64 / (reward.post_balance as f64 - reward.lamports as f64) diff --git a/cli/src/stake.rs b/cli/src/stake.rs index aea100823b..36785a61aa 100644 --- a/cli/src/stake.rs +++ b/cli/src/stake.rs @@ -29,7 +29,7 @@ use solana_client::{ use solana_remote_wallet::remote_wallet::RemoteWalletManager; use solana_sdk::{ account_utils::StateMut, - clock::{Clock, Epoch, Slot, UnixTimestamp}, + clock::{Clock, Epoch, Slot, UnixTimestamp, SECONDS_PER_DAY}, message::Message, pubkey::Pubkey, system_instruction::SystemError, @@ -1620,13 +1620,13 @@ pub(crate) fn fetch_epoch_rewards( let previous_epoch_rewards = first_confirmed_block.rewards; if let Some((effective_slot, epoch_end_time, epoch_rewards)) = epoch_info { - let wall_clock_epoch_duration = + let wallclock_epoch_duration = { Local.timestamp(epoch_end_time, 0) - Local.timestamp(epoch_start_time, 0) } .to_std()? .as_secs_f64(); - const SECONDS_PER_YEAR: f64 = (24 * 60 * 60 * 356) as f64; - let percent_of_year = SECONDS_PER_YEAR / wall_clock_epoch_duration; + let wallclock_epochs_per_year = + (SECONDS_PER_DAY * 356) as f64 / wallclock_epoch_duration; if let Some(reward) = epoch_rewards .into_iter() @@ -1642,7 +1642,7 @@ pub(crate) fn fetch_epoch_rewards( amount: reward.lamports.abs() as u64, post_balance: reward.post_balance, percent_change: balance_increase_percent, - apr: balance_increase_percent * percent_of_year, + apr: balance_increase_percent * wallclock_epochs_per_year, }); } }