#[non_exhaustive]pub struct RootStatus {
pub id: String,
pub generation: u64,
pub phase: CutoverPhase,
pub selected: RootSelection,
pub old_root: PathBuf,
pub new_root: PathBuf,
pub participants: Vec<String>,
pub error: Option<String>,
pub retired: Option<PathBuf>,
pub settlement_complete: bool,
}Expand description
What the persisted record says (see RootCutover::status).
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.id: String§generation: u64§phase: CutoverPhase§selected: RootSelection§old_root: PathBuf§new_root: PathBuf§participants: Vec<String>§error: Option<String>Why an aborted cutover failed.
retired: Option<PathBuf>Where RootCutover::retire_old_root put the old root, once it did.
settlement_complete: boolEvery participant’s committed cleanup was durably acknowledged. Missing legacy markers are false: a completed cutover still needs cleanup recovery before old-root retirement.
Implementations§
Source§impl RootStatus
impl RootStatus
Sourcepub fn selected_root(&self) -> &Path
pub fn selected_root(&self) -> &Path
The root to open.
Sourcepub fn needs_recovery(&self) -> bool
pub fn needs_recovery(&self) -> bool
True when the switch is durable but reopen or committed cleanup remains pending: run
RootCutover::recover before opening anything.
Trait Implementations§
Source§impl Clone for RootStatus
impl Clone for RootStatus
Source§impl Debug for RootStatus
impl Debug for RootStatus
impl Eq for RootStatus
Source§impl PartialEq for RootStatus
impl PartialEq for RootStatus
impl StructuralPartialEq for RootStatus
Auto Trait Implementations§
impl Freeze for RootStatus
impl RefUnwindSafe for RootStatus
impl Send for RootStatus
impl Sync for RootStatus
impl Unpin for RootStatus
impl UnsafeUnpin for RootStatus
impl UnwindSafe for RootStatus
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