pub struct ProgramCacheStats {
pub hits: AtomicU64,
pub misses: AtomicU64,
pub evictions: HashMap<Pubkey, u64>,
pub reloads: AtomicU64,
pub insertions: AtomicU64,
pub lost_insertions: AtomicU64,
pub replacements: AtomicU64,
pub one_hit_wonders: AtomicU64,
pub prunes_orphan: AtomicU64,
pub prunes_environment: AtomicU64,
pub empty_entries: AtomicU64,
pub water_level: AtomicU64,
}
Expand description
Global cache statistics for ProgramCache.
Fields§
§hits: AtomicU64
a program was already in the cache
misses: AtomicU64
a program was not found and loaded instead
evictions: HashMap<Pubkey, u64>
a compiled executable was unloaded
reloads: AtomicU64
an unloaded program was loaded again (opposite of eviction)
insertions: AtomicU64
a program was loaded or un/re/deployed
lost_insertions: AtomicU64
a program was loaded but can not be extracted on its own fork anymore
replacements: AtomicU64
a program which was already in the cache was reloaded by mistake
one_hit_wonders: AtomicU64
a program was only used once before being unloaded
prunes_orphan: AtomicU64
a program became unreachable in the fork graph because of rerooting
prunes_environment: AtomicU64
a program got pruned because it was not recompiled for the next epoch
empty_entries: AtomicU64
a program had no entries because all slot versions got pruned
water_level: AtomicU64
water level of loaded entries currently cached
Implementations§
Trait Implementations§
Source§impl Debug for ProgramCacheStats
impl Debug for ProgramCacheStats
Source§impl Default for ProgramCacheStats
impl Default for ProgramCacheStats
Source§fn default() -> ProgramCacheStats
fn default() -> ProgramCacheStats
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl !Freeze for ProgramCacheStats
impl RefUnwindSafe for ProgramCacheStats
impl Send for ProgramCacheStats
impl Sync for ProgramCacheStats
impl Unpin for ProgramCacheStats
impl UnwindSafe for ProgramCacheStats
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
Mutably borrows from an owned value. Read more
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>
Converts
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>
Converts
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