pub enum Crash {
LosingUnsynced,
KeepingEverything,
Keeping(Vec<u64>),
}Expand description
Which unsynced writes survived a crash.
Variants§
LosingUnsynced
None of them. The pessimistic case, and the one most tests reach for first.
KeepingEverything
All of them. Not a crash so much as a clean shutdown, and worth testing because a database that only works when writes are lost has a different bug.
Keeping(Vec<u64>)
Exactly these, by the sequence numbers from SimFilesystem::pending.
This is the variant the exhaustive enumeration uses. With three unsynced writes there are eight subsets and the test runs all eight.
Trait Implementations§
impl Eq for Crash
impl StructuralPartialEq for Crash
Auto Trait Implementations§
impl Freeze for Crash
impl RefUnwindSafe for Crash
impl Send for Crash
impl Sync for Crash
impl Unpin for Crash
impl UnsafeUnpin for Crash
impl UnwindSafe for Crash
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