pub struct CommitRange { /* private fields */ }Expand description
A contiguous range of Delta commits, holding resolved [start_version, end_version] bounds
plus the materialized commit-file pointers in commit_files.
The pointer order matches the CommitOrdering requested at build time (ascending by
default; reversed if CommitOrdering::DescendingOrder). Reading the underlying actions is
lazy via CommitRange::commits.
Implementations§
Source§impl CommitRange
impl CommitRange
Sourcepub fn builder_for(
table_root: impl AsRef<str>,
start_version: Version,
) -> CommitRangeBuilder
pub fn builder_for( table_root: impl AsRef<str>, start_version: Version, ) -> CommitRangeBuilder
Begin building a CommitRange rooted at table_root, starting at start_version.
Sourcepub fn builder_from(
snapshot: SnapshotRef,
start_version: Version,
) -> CommitRangeBuilder
pub fn builder_from( snapshot: SnapshotRef, start_version: Version, ) -> CommitRangeBuilder
Begin building a CommitRange derived from an existing snapshot, starting at
start_version.
The snapshot’s table root anchors the range, and the snapshot’s LogSegment is
reused to enumerate commits, avoiding an extra delta-log listing.
Sourcepub fn start_version(&self) -> Version
pub fn start_version(&self) -> Version
First version (inclusive) in the range.
Sourcepub fn end_version(&self) -> Version
pub fn end_version(&self) -> Version
Last version (inclusive) in the range.
Sourcepub fn table_root(&self) -> &Url
pub fn table_root(&self) -> &Url
The table root URL this range was built from.
Sourcepub fn commits(
&self,
engine: Arc<dyn Engine>,
start_snapshot: Option<SnapshotRef>,
actions: &[DeltaAction],
) -> DeltaResult<impl Iterator<Item = DeltaResult<CommitAction>> + Send>
pub fn commits( &self, engine: Arc<dyn Engine>, start_snapshot: Option<SnapshotRef>, actions: &[DeltaAction], ) -> DeltaResult<impl Iterator<Item = DeltaResult<CommitAction>> + Send>
Iterator over the commits in the range, yielding one CommitAction per commit.
engine: performs the per-commit JSON reads.start_snapshot: optional snapshot whose version anchors the range and seeds protocol/metadata validation;Nonevalidates from the commits alone.actions: the action kinds to project into each commit’s read schema.
Actions are returned raw, exactly as recorded in the commit JSON; no column-mapping translation is applied.
This is operation-agnostic: requesting DeltaAction::Cdc returns the raw cdc action
records and does NOT impose change-data-feed support (Operation::Cdf). It does not
materialize a change data feed.
Returns Err if actions is empty or contains duplicate kinds, or if start_snapshot
belongs to a different table, its version does not match the range anchor, or its table
does not support scanning.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for CommitRange
impl RefUnwindSafe for CommitRange
impl Send for CommitRange
impl Sync for CommitRange
impl Unpin for CommitRange
impl UnsafeUnpin for CommitRange
impl UnwindSafe for CommitRange
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> AsAny for T
impl<T> AsAny for T
Source§fn any_ref(&self) -> &(dyn Any + Send + Sync + 'static)
fn any_ref(&self) -> &(dyn Any + Send + Sync + 'static)
dyn Any reference to the object: Read moreSource§fn as_any(self: Arc<T>) -> Arc<dyn Any + Send + Sync> ⓘ
fn as_any(self: Arc<T>) -> Arc<dyn Any + Send + Sync> ⓘ
Arc<dyn Any> reference to the object: Read moreSource§fn into_any(self: Box<T>) -> Box<dyn Any + Send + Sync>
fn into_any(self: Box<T>) -> Box<dyn Any + Send + Sync>
Box<dyn Any>: Read moreSource§fn type_name(&self) -> &'static str
fn type_name(&self) -> &'static str
std::any::type_name, since Any does not provide it and
Any::type_id is useless as a debugging aid (its Debug is just a mess of hex digits).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
Source§impl<T> FoldWithOption for T
impl<T> FoldWithOption for T
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 moreSource§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
Source§impl<KernelType, ArrowType> TryIntoArrow<ArrowType> for KernelTypewhere
ArrowType: TryFromKernel<KernelType>,
impl<KernelType, ArrowType> TryIntoArrow<ArrowType> for KernelTypewhere
ArrowType: TryFromKernel<KernelType>,
Source§fn try_into_arrow(self) -> Result<ArrowType, ArrowError>
fn try_into_arrow(self) -> Result<ArrowType, ArrowError>
arrow-conversion and (crate features arrow-conversion or declarative-plans or default-engine-base) only.Source§impl<KernelType, ArrowType> TryIntoKernel<KernelType> for ArrowTypewhere
KernelType: TryFromArrow<ArrowType>,
impl<KernelType, ArrowType> TryIntoKernel<KernelType> for ArrowTypewhere
KernelType: TryFromArrow<ArrowType>,
Source§fn try_into_kernel(self) -> Result<KernelType, ArrowError>
fn try_into_kernel(self) -> Result<KernelType, ArrowError>
arrow-conversion and (crate features arrow-conversion or declarative-plans or default-engine-base) only.