* Remove unused fields from Bank (#22491)
(cherry picked from commit 9977396d8f
)
# Conflicts:
# runtime/src/serde_snapshot/future.rs
* fixup the backport
Co-authored-by: Brooks Prumo <brooks@solana.com>
This commit is contained in:
@ -864,8 +864,6 @@ pub(crate) struct BankFieldsToDeserialize {
|
|||||||
pub(crate) ns_per_slot: u128,
|
pub(crate) ns_per_slot: u128,
|
||||||
pub(crate) genesis_creation_time: UnixTimestamp,
|
pub(crate) genesis_creation_time: UnixTimestamp,
|
||||||
pub(crate) slots_per_year: f64,
|
pub(crate) slots_per_year: f64,
|
||||||
#[allow(dead_code)]
|
|
||||||
pub(crate) unused: u64,
|
|
||||||
pub(crate) slot: Slot,
|
pub(crate) slot: Slot,
|
||||||
pub(crate) epoch: Epoch,
|
pub(crate) epoch: Epoch,
|
||||||
pub(crate) block_height: u64,
|
pub(crate) block_height: u64,
|
||||||
@ -904,7 +902,6 @@ pub(crate) struct BankFieldsToSerialize<'a> {
|
|||||||
pub(crate) ns_per_slot: u128,
|
pub(crate) ns_per_slot: u128,
|
||||||
pub(crate) genesis_creation_time: UnixTimestamp,
|
pub(crate) genesis_creation_time: UnixTimestamp,
|
||||||
pub(crate) slots_per_year: f64,
|
pub(crate) slots_per_year: f64,
|
||||||
pub(crate) unused: u64,
|
|
||||||
pub(crate) slot: Slot,
|
pub(crate) slot: Slot,
|
||||||
pub(crate) epoch: Epoch,
|
pub(crate) epoch: Epoch,
|
||||||
pub(crate) block_height: u64,
|
pub(crate) block_height: u64,
|
||||||
@ -943,7 +940,6 @@ impl PartialEq for Bank {
|
|||||||
&& self.ns_per_slot == other.ns_per_slot
|
&& self.ns_per_slot == other.ns_per_slot
|
||||||
&& self.genesis_creation_time == other.genesis_creation_time
|
&& self.genesis_creation_time == other.genesis_creation_time
|
||||||
&& self.slots_per_year == other.slots_per_year
|
&& self.slots_per_year == other.slots_per_year
|
||||||
&& self.unused == other.unused
|
|
||||||
&& self.slot == other.slot
|
&& self.slot == other.slot
|
||||||
&& self.epoch == other.epoch
|
&& self.epoch == other.epoch
|
||||||
&& self.block_height == other.block_height
|
&& self.block_height == other.block_height
|
||||||
@ -1095,9 +1091,6 @@ pub struct Bank {
|
|||||||
/// The number of slots per year, used for inflation
|
/// The number of slots per year, used for inflation
|
||||||
slots_per_year: f64,
|
slots_per_year: f64,
|
||||||
|
|
||||||
/// Unused
|
|
||||||
unused: u64,
|
|
||||||
|
|
||||||
/// Bank slot (i.e. block)
|
/// Bank slot (i.e. block)
|
||||||
slot: Slot,
|
slot: Slot,
|
||||||
|
|
||||||
@ -1300,7 +1293,6 @@ impl Bank {
|
|||||||
ns_per_slot: u128::default(),
|
ns_per_slot: u128::default(),
|
||||||
genesis_creation_time: UnixTimestamp::default(),
|
genesis_creation_time: UnixTimestamp::default(),
|
||||||
slots_per_year: f64::default(),
|
slots_per_year: f64::default(),
|
||||||
unused: u64::default(),
|
|
||||||
slot: Slot::default(),
|
slot: Slot::default(),
|
||||||
bank_id: BankId::default(),
|
bank_id: BankId::default(),
|
||||||
epoch: Epoch::default(),
|
epoch: Epoch::default(),
|
||||||
@ -1531,7 +1523,6 @@ impl Bank {
|
|||||||
ticks_per_slot: parent.ticks_per_slot,
|
ticks_per_slot: parent.ticks_per_slot,
|
||||||
ns_per_slot: parent.ns_per_slot,
|
ns_per_slot: parent.ns_per_slot,
|
||||||
genesis_creation_time: parent.genesis_creation_time,
|
genesis_creation_time: parent.genesis_creation_time,
|
||||||
unused: parent.unused,
|
|
||||||
slots_per_year: parent.slots_per_year,
|
slots_per_year: parent.slots_per_year,
|
||||||
epoch_schedule,
|
epoch_schedule,
|
||||||
collected_rent: AtomicU64::new(0),
|
collected_rent: AtomicU64::new(0),
|
||||||
@ -1738,7 +1729,6 @@ impl Bank {
|
|||||||
ns_per_slot: fields.ns_per_slot,
|
ns_per_slot: fields.ns_per_slot,
|
||||||
genesis_creation_time: fields.genesis_creation_time,
|
genesis_creation_time: fields.genesis_creation_time,
|
||||||
slots_per_year: fields.slots_per_year,
|
slots_per_year: fields.slots_per_year,
|
||||||
unused: genesis_config.unused,
|
|
||||||
slot: fields.slot,
|
slot: fields.slot,
|
||||||
bank_id: 0,
|
bank_id: 0,
|
||||||
epoch: fields.epoch,
|
epoch: fields.epoch,
|
||||||
@ -1798,7 +1788,6 @@ impl Bank {
|
|||||||
* genesis_config.ticks_per_slot as u128
|
* genesis_config.ticks_per_slot as u128
|
||||||
);
|
);
|
||||||
assert_eq!(bank.genesis_creation_time, genesis_config.creation_time);
|
assert_eq!(bank.genesis_creation_time, genesis_config.creation_time);
|
||||||
assert_eq!(bank.unused, genesis_config.unused);
|
|
||||||
assert_eq!(bank.max_tick_height, (bank.slot + 1) * bank.ticks_per_slot);
|
assert_eq!(bank.max_tick_height, (bank.slot + 1) * bank.ticks_per_slot);
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
bank.slots_per_year,
|
bank.slots_per_year,
|
||||||
@ -1843,7 +1832,6 @@ impl Bank {
|
|||||||
ns_per_slot: self.ns_per_slot,
|
ns_per_slot: self.ns_per_slot,
|
||||||
genesis_creation_time: self.genesis_creation_time,
|
genesis_creation_time: self.genesis_creation_time,
|
||||||
slots_per_year: self.slots_per_year,
|
slots_per_year: self.slots_per_year,
|
||||||
unused: self.unused,
|
|
||||||
slot: self.slot,
|
slot: self.slot,
|
||||||
epoch: self.epoch,
|
epoch: self.epoch,
|
||||||
block_height: self.block_height,
|
block_height: self.block_height,
|
||||||
@ -1980,11 +1968,6 @@ impl Bank {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Unused conversion
|
|
||||||
pub fn get_unused_from_slot(rooted_slot: Slot, unused: u64) -> u64 {
|
|
||||||
(rooted_slot + (unused - 1)) / unused
|
|
||||||
}
|
|
||||||
|
|
||||||
pub fn clock(&self) -> sysvar::clock::Clock {
|
pub fn clock(&self) -> sysvar::clock::Clock {
|
||||||
from_account(&self.get_account(&sysvar::clock::id()).unwrap_or_default())
|
from_account(&self.get_account(&sysvar::clock::id()).unwrap_or_default())
|
||||||
.unwrap_or_default()
|
.unwrap_or_default()
|
||||||
@ -2910,7 +2893,6 @@ impl Bank {
|
|||||||
self.ticks_per_slot = genesis_config.ticks_per_slot();
|
self.ticks_per_slot = genesis_config.ticks_per_slot();
|
||||||
self.ns_per_slot = genesis_config.ns_per_slot();
|
self.ns_per_slot = genesis_config.ns_per_slot();
|
||||||
self.genesis_creation_time = genesis_config.creation_time;
|
self.genesis_creation_time = genesis_config.creation_time;
|
||||||
self.unused = genesis_config.unused;
|
|
||||||
self.max_tick_height = (self.slot + 1) * self.ticks_per_slot;
|
self.max_tick_height = (self.slot + 1) * self.ticks_per_slot;
|
||||||
self.slots_per_year = genesis_config.slots_per_year();
|
self.slots_per_year = genesis_config.slots_per_year();
|
||||||
|
|
||||||
|
@ -63,6 +63,7 @@ pub(crate) struct DeserializableVersionedBank {
|
|||||||
pub(crate) ns_per_slot: u128,
|
pub(crate) ns_per_slot: u128,
|
||||||
pub(crate) genesis_creation_time: UnixTimestamp,
|
pub(crate) genesis_creation_time: UnixTimestamp,
|
||||||
pub(crate) slots_per_year: f64,
|
pub(crate) slots_per_year: f64,
|
||||||
|
#[allow(dead_code)]
|
||||||
pub(crate) unused: u64,
|
pub(crate) unused: u64,
|
||||||
pub(crate) slot: Slot,
|
pub(crate) slot: Slot,
|
||||||
pub(crate) epoch: Epoch,
|
pub(crate) epoch: Epoch,
|
||||||
@ -101,7 +102,6 @@ impl From<DeserializableVersionedBank> for BankFieldsToDeserialize {
|
|||||||
ns_per_slot: dvb.ns_per_slot,
|
ns_per_slot: dvb.ns_per_slot,
|
||||||
genesis_creation_time: dvb.genesis_creation_time,
|
genesis_creation_time: dvb.genesis_creation_time,
|
||||||
slots_per_year: dvb.slots_per_year,
|
slots_per_year: dvb.slots_per_year,
|
||||||
unused: dvb.unused,
|
|
||||||
slot: dvb.slot,
|
slot: dvb.slot,
|
||||||
epoch: dvb.epoch,
|
epoch: dvb.epoch,
|
||||||
block_height: dvb.block_height,
|
block_height: dvb.block_height,
|
||||||
@ -160,9 +160,6 @@ pub(crate) struct SerializableVersionedBank<'a> {
|
|||||||
|
|
||||||
impl<'a> From<crate::bank::BankFieldsToSerialize<'a>> for SerializableVersionedBank<'a> {
|
impl<'a> From<crate::bank::BankFieldsToSerialize<'a>> for SerializableVersionedBank<'a> {
|
||||||
fn from(rhs: crate::bank::BankFieldsToSerialize<'a>) -> Self {
|
fn from(rhs: crate::bank::BankFieldsToSerialize<'a>) -> Self {
|
||||||
fn new<T: Default>() -> T {
|
|
||||||
T::default()
|
|
||||||
}
|
|
||||||
Self {
|
Self {
|
||||||
blockhash_queue: rhs.blockhash_queue,
|
blockhash_queue: rhs.blockhash_queue,
|
||||||
ancestors: rhs.ancestors,
|
ancestors: rhs.ancestors,
|
||||||
@ -180,7 +177,7 @@ impl<'a> From<crate::bank::BankFieldsToSerialize<'a>> for SerializableVersionedB
|
|||||||
ns_per_slot: rhs.ns_per_slot,
|
ns_per_slot: rhs.ns_per_slot,
|
||||||
genesis_creation_time: rhs.genesis_creation_time,
|
genesis_creation_time: rhs.genesis_creation_time,
|
||||||
slots_per_year: rhs.slots_per_year,
|
slots_per_year: rhs.slots_per_year,
|
||||||
unused: rhs.unused,
|
unused: u64::default(),
|
||||||
slot: rhs.slot,
|
slot: rhs.slot,
|
||||||
epoch: rhs.epoch,
|
epoch: rhs.epoch,
|
||||||
block_height: rhs.block_height,
|
block_height: rhs.block_height,
|
||||||
@ -193,7 +190,7 @@ impl<'a> From<crate::bank::BankFieldsToSerialize<'a>> for SerializableVersionedB
|
|||||||
epoch_schedule: rhs.epoch_schedule,
|
epoch_schedule: rhs.epoch_schedule,
|
||||||
inflation: rhs.inflation,
|
inflation: rhs.inflation,
|
||||||
stakes: rhs.stakes,
|
stakes: rhs.stakes,
|
||||||
unused_accounts: new(),
|
unused_accounts: UnusedAccounts::default(),
|
||||||
epoch_stakes: rhs.epoch_stakes,
|
epoch_stakes: rhs.epoch_stakes,
|
||||||
is_delta: rhs.is_delta,
|
is_delta: rhs.is_delta,
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user