pub struct TableMetadata {
pub table_uuid: String,
pub format_version: i32,
pub location: String,
pub properties: HashMap<String, String>,
pub current_snapshot_id: Option<SnapshotId>,
pub current_statistics_path: Option<String>,
pub schema_fields: Vec<SchemaField>,
pub equality_delete_files: Vec<EqualityDeleteFile>,
pub partition_spec: Option<PartitionSpec>,
}Expand description
Iceberg-compatible table metadata read from the catalog.
Fields§
§table_uuid: String§format_version: i32§location: String§properties: HashMap<String, String>Ailake-specific properties: ailake.vector-column, ailake.dim, etc.
current_snapshot_id: Option<SnapshotId>§current_statistics_path: Option<String>Absolute path to the Puffin stats file for the current snapshot (Phase F).
None for V2 tables or V3 tables without any committed statistics yet.
schema_fields: Vec<SchemaField>Current schema fields parsed from metadata.json (Phase G).
Empty for tables created before Phase G or tables with no schema committed.
Used by SchemaFiller in the scanner to inject missing columns with defaults.
equality_delete_files: Vec<EqualityDeleteFile>Equality delete files active in the current snapshot (Phase H).
Loaded from delete manifests (content=2 in the manifest list).
Populated by CatalogProvider::list_equality_deletes — empty until first call.
partition_spec: Option<PartitionSpec>Active partition spec for this table (Phase I).
None for unpartitioned tables or tables created before Phase I.
Trait Implementations§
Source§impl Clone for TableMetadata
impl Clone for TableMetadata
Source§fn clone(&self) -> TableMetadata
fn clone(&self) -> TableMetadata
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for TableMetadata
impl Debug for TableMetadata
Source§impl<'de> Deserialize<'de> for TableMetadata
impl<'de> Deserialize<'de> for TableMetadata
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 TableMetadata
impl RefUnwindSafe for TableMetadata
impl Send for TableMetadata
impl Sync for TableMetadata
impl Unpin for TableMetadata
impl UnsafeUnpin for TableMetadata
impl UnwindSafe for TableMetadata
Blanket Implementations§
impl<T> Allocation for T
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