pub struct ForkInfo {
pub id: ForkId,
pub name: String,
pub parent_fork_id: Option<ForkId>,
pub parent_snapshot_id: String,
pub created_at: DateTime<Utc>,
pub ttl_expires_at: Option<DateTime<Utc>>,
pub schema_version_at_creation: u32,
pub datasets: BTreeMap<String, String>,
pub status: ForkStatus,
}Expand description
Metadata for a single fork.
One ForkInfo per fork in catalog/fork_registry.json. The
datasets map is filled in step 4 of the create 2PC and is
authoritative for which Lance branches the fork owns.
Fields§
§id: ForkIdStable identifier; persists across rename if rename ever lands.
name: StringHuman-readable name (unique per database).
parent_fork_id: Option<ForkId>Parent fork in a nested-fork chain. None ⇒ parent is primary.
Phase 1 always sets None.
parent_snapshot_id: StringSnapshot id of primary at the moment the fork was created.
created_at: DateTime<Utc>Wall-clock UTC at fork creation.
ttl_expires_at: Option<DateTime<Utc>>Wall-clock TTL expiry. None ⇒ never expires. Phase 1 always
None; the sweeper lands in Phase 4.
schema_version_at_creation: u32Schema version (Schema::schema_version) at fork creation.
Captured day-one even though only Phase 7’s schema-evolution
spike consumes it; backfilling later is impossible.
datasets: BTreeMap<String, String>Map of dataset_name → branch_name for every Lance dataset
this fork owns. Branch names live under the dataset’s tree/
directory in Lance’s on-disk layout.
status: ForkStatusLifecycle state. See ForkStatus.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ForkInfo
impl<'de> Deserialize<'de> for ForkInfo
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for ForkInfo
impl RefUnwindSafe for ForkInfo
impl Send for ForkInfo
impl Sync for ForkInfo
impl Unpin for ForkInfo
impl UnsafeUnpin for ForkInfo
impl UnwindSafe for ForkInfo
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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>
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>
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