pub struct BankIncrementalSnapshotPersistence {
pub full_slot: Slot,
pub full_hash: Hash,
pub full_capitalization: u64,
pub incremental_hash: Hash,
pub incremental_capitalization: u64,
}
Expand description
Incremental snapshots only calculate their accounts hash based on the account changes WITHIN the incremental slot range. So, we need to keep track of the full snapshot expected accounts hash results. We also need to keep track of the hash and capitalization specific to the incremental snapshot slot range. The capitalization we calculate for the incremental slot will NOT be consistent with the bank’s capitalization. It is not feasible to calculate a capitalization delta that is correct given just incremental slots account data and the full snapshot’s capitalization.
Fields
full_slot: Slot
slot of full snapshot
full_hash: Hash
accounts hash from the full snapshot
full_capitalization: u64
capitalization from the full snapshot
incremental_hash: Hash
hash of the accounts in the incremental snapshot slot range, including zero-lamport accounts
incremental_capitalization: u64
capitalization of the accounts in the incremental snapshot slot range
Trait Implementations
sourceimpl Clone for BankIncrementalSnapshotPersistence
impl Clone for BankIncrementalSnapshotPersistence
sourcefn clone(&self) -> BankIncrementalSnapshotPersistence
fn clone(&self) -> BankIncrementalSnapshotPersistence
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Default for BankIncrementalSnapshotPersistence
impl Default for BankIncrementalSnapshotPersistence
sourcefn default() -> BankIncrementalSnapshotPersistence
fn default() -> BankIncrementalSnapshotPersistence
Returns the “default value” for a type. Read more
sourceimpl<'de> Deserialize<'de> for BankIncrementalSnapshotPersistence
impl<'de> Deserialize<'de> for BankIncrementalSnapshotPersistence
sourcefn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
sourceimpl PartialEq<BankIncrementalSnapshotPersistence> for BankIncrementalSnapshotPersistence
impl PartialEq<BankIncrementalSnapshotPersistence> for BankIncrementalSnapshotPersistence
sourcefn eq(&self, other: &BankIncrementalSnapshotPersistence) -> bool
fn eq(&self, other: &BankIncrementalSnapshotPersistence) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
impl Eq for BankIncrementalSnapshotPersistence
impl StructuralEq for BankIncrementalSnapshotPersistence
impl StructuralPartialEq for BankIncrementalSnapshotPersistence
Auto Trait Implementations
impl RefUnwindSafe for BankIncrementalSnapshotPersistence
impl Send for BankIncrementalSnapshotPersistence
impl Sync for BankIncrementalSnapshotPersistence
impl Unpin for BankIncrementalSnapshotPersistence
impl UnwindSafe for BankIncrementalSnapshotPersistence
Blanket Implementations
sourceimpl<T> AbiEnumVisitor for Twhere
T: Serialize + AbiExample + ?Sized,
impl<T> AbiEnumVisitor for Twhere
T: Serialize + AbiExample + ?Sized,
default fn visit_for_abi(
&self,
digester: &mut AbiDigester
) -> Result<AbiDigester, DigestError>
sourceimpl<T> AbiEnumVisitor for Twhere
T: Serialize + ?Sized,
impl<T> AbiEnumVisitor for Twhere
T: Serialize + ?Sized,
default fn visit_for_abi(
&self,
_digester: &mut AbiDigester
) -> Result<AbiDigester, DigestError>
sourceimpl<T> AbiExample for T
impl<T> AbiExample for T
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Qwhere
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> Pointable for T
impl<T> Pointable for T
impl<V, T> VZip<V> for Twhere
V: MultiLane<T>,
impl<V, T> VZip<V> for Twhere
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more