pub enum TieredStorageReader {
Hot(HotStorageReader),
}
Expand description
The reader of a tiered storage instance.
Variants§
Hot(HotStorageReader)
Implementations§
Source§impl TieredStorageReader
impl TieredStorageReader
Sourcepub fn new_from_path(path: impl AsRef<Path>) -> TieredStorageResult<Self>
pub fn new_from_path(path: impl AsRef<Path>) -> TieredStorageResult<Self>
Creates a reader for the specified tiered storage accounts file.
pub fn capacity(&self) -> u64
Returns the footer of the associated HotAccountsFile.
Sourcepub fn num_accounts(&self) -> usize
pub fn num_accounts(&self) -> usize
Returns the total number of accounts.
Returns the account located at the specified index offset.
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.
Sourcepub fn account_matches_owners(
&self,
index_offset: IndexOffset,
owners: &[Pubkey],
) -> Result<usize, MatchAccountOwnerError>
pub fn account_matches_owners( &self, index_offset: IndexOffset, 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 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 tiered storages
Trait Implementations§
Auto Trait Implementations§
impl Freeze for TieredStorageReader
impl RefUnwindSafe for TieredStorageReader
impl Send for TieredStorageReader
impl Sync for TieredStorageReader
impl Unpin for TieredStorageReader
impl UnwindSafe for TieredStorageReader
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