pub(super) enum FullScanReason {
FirstRun,
SnapshotUnusable,
CheckpointStale,
JournalQueryFailed,
}Expand description
Why a full scan was chosen — selects the effect at the call site (counter + warn / info / silence). Effects stay out of the decision.
Variants§
FirstRun
No snapshot on disk: the normal first run, not a failure.
SnapshotUnusable
Snapshot present but unreadable/corrupt — counted in
snapshot_load_failures, never silent.
CheckpointStale
Snapshot loaded, but its checkpoint cannot be replayed from the
live journal: the journal id changed, or the persisted cursor was
already purged (next_usn < first_usn).
JournalQueryFailed
FSCTL_QUERY_USN_JOURNAL failed, so the checkpoint cannot be
validated and must not be trusted. Silent by design (pre-seam
behavior): a journal this broken fails the next open/read loudly.
Trait Implementations§
Source§impl Clone for FullScanReason
impl Clone for FullScanReason
Source§fn clone(&self) -> FullScanReason
fn clone(&self) -> FullScanReason
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for FullScanReason
impl Debug for FullScanReason
Source§impl PartialEq for FullScanReason
impl PartialEq for FullScanReason
impl Copy for FullScanReason
impl Eq for FullScanReason
impl StructuralPartialEq for FullScanReason
Auto Trait Implementations§
impl Freeze for FullScanReason
impl RefUnwindSafe for FullScanReason
impl Send for FullScanReason
impl Sync for FullScanReason
impl Unpin for FullScanReason
impl UnsafeUnpin for FullScanReason
impl UnwindSafe for FullScanReason
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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