pub struct HotStorageReader { /* private fields */ }
Expand description
The reader to a hot accounts file.
Implementations§
Source§impl HotStorageReader
impl HotStorageReader
pub fn new(file: TieredReadableFile) -> TieredStorageResult<Self>
pub fn capacity(&self) -> u64
Returns the footer of the underlying tiered-storage accounts file.
Sourcepub fn num_accounts(&self) -> usize
pub fn num_accounts(&self) -> usize
Returns the number of files inside the underlying tiered-storage accounts file.
Sourcepub fn account_matches_owners(
&self,
account_offset: HotAccountOffset,
owners: &[Pubkey],
) -> Result<usize, MatchAccountOwnerError>
pub fn account_matches_owners( &self, account_offset: HotAccountOffset, owners: &[Pubkey], ) -> Result<usize, MatchAccountOwnerError>
Returns Ok(index_of_matching_owner) if the account owner at
account_offset
is one of the pubkeys in owners
.
Returns Err(MatchAccountOwnerError::NoMatch) if the account has 0
lamports or the owner is not one of the pubkeys in owners
.
Returns Err(MatchAccountOwnerError::UnableToLoad) if there is any internal
error that causes the data unable to load, including account_offset
causes a data overrun.
Sourcepub fn get_stored_account_meta_callback<Ret>(
&self,
index_offset: IndexOffset,
callback: impl for<'local> FnMut(StoredAccountMeta<'local>) -> Ret,
) -> TieredStorageResult<Option<Ret>>
pub fn get_stored_account_meta_callback<Ret>( &self, index_offset: IndexOffset, callback: impl for<'local> FnMut(StoredAccountMeta<'local>) -> Ret, ) -> TieredStorageResult<Option<Ret>>
calls callback
with the account located at the specified index offset.
Returns the account located at the specified index offset.
Sourcepub fn scan_pubkeys(
&self,
callback: impl FnMut(&Pubkey),
) -> TieredStorageResult<()>
pub fn scan_pubkeys( &self, callback: impl FnMut(&Pubkey), ) -> TieredStorageResult<()>
iterate over all pubkeys
Sourcepub fn data_for_archive(&self) -> &[u8] ⓘ
pub fn data_for_archive(&self) -> &[u8] ⓘ
Returns a slice suitable for use when archiving hot storages
Trait Implementations§
Auto Trait Implementations§
impl Freeze for HotStorageReader
impl RefUnwindSafe for HotStorageReader
impl Send for HotStorageReader
impl Sync for HotStorageReader
impl Unpin for HotStorageReader
impl UnwindSafe for HotStorageReader
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more