haematite 0.6.1

Content-addressed, branchable, actor-native storage engine
Documentation
//! Test-scoped, actor-local TTL expiry instrumentation.

/// Monotone expiry counters plus the current logical-arm gauge.
///
/// The fields remain in production actor state so tests measure the real cost
/// shape, but no production API exports them. Only `current_arms` may decrease.
#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
pub(super) struct ExpiryMetrics {
    pub(super) current_arms: u64,
    pub(super) scheduler_arm_requests: u64,
    pub(super) physical_arms: u64,
    pub(super) deadline_deliveries: u64,
    pub(super) accepted_deliveries: u64,
    pub(super) actor_wakes: u64,
    pub(super) inspected_keys: u64,
    pub(super) delete_attempts: u64,
    pub(super) deletes: u64,
    pub(super) stale_drops: u64,
    pub(super) index_mutations: u64,
    pub(super) minimum_changes: u64,
    pub(super) rebuild_entries: u64,
    pub(super) merge_rebuild_entries: u64,
    pub(super) old_value_decodes: u64,
    pub(super) old_value_decode_bytes: u64,
    pub(super) old_value_expiring: u64,
    pub(super) arm_refusals: u64,
}