pub struct BatchPolicy {
pub max_rows: usize,
pub max_latency: Duration,
pub flush_on_watermark: bool,
}Expand description
Controls when the bridge consumer flushes accumulated rows into a RecordBatch.
The consumer flushes when any of these conditions is met:
- The row count reaches
max_rows. - The time since the first row exceeds
max_latency. - A watermark message arrives and
flush_on_watermarkistrue. - A checkpoint barrier arrives (always flushes).
- An EOF message arrives (always flushes).
Fields§
§max_rows: usizeMaximum number of rows before a flush.
max_latency: DurationMaximum time a row may wait before flushing.
flush_on_watermark: boolWhether a watermark advance triggers a flush of pending rows.
When true (the default), rows accumulated before a watermark are flushed
as a batch before the watermark is forwarded to Ring 1. This prevents
partial-batch emissions tied to arbitrary batch boundaries (Issue #55).
Implementations§
Source§impl BatchPolicy
impl BatchPolicy
Sourcepub const fn with_max_rows(self, max_rows: usize) -> Self
pub const fn with_max_rows(self, max_rows: usize) -> Self
Sets the maximum row count before a flush.
Sourcepub const fn with_max_latency(self, max_latency: Duration) -> Self
pub const fn with_max_latency(self, max_latency: Duration) -> Self
Sets the maximum latency before a flush.
Sourcepub const fn with_flush_on_watermark(self, flush_on_watermark: bool) -> Self
pub const fn with_flush_on_watermark(self, flush_on_watermark: bool) -> Self
Sets whether watermark advances flush pending rows.
Trait Implementations§
Source§impl Clone for BatchPolicy
impl Clone for BatchPolicy
Source§fn clone(&self) -> BatchPolicy
fn clone(&self) -> BatchPolicy
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for BatchPolicy
impl Debug for BatchPolicy
Auto Trait Implementations§
impl Freeze for BatchPolicy
impl RefUnwindSafe for BatchPolicy
impl Send for BatchPolicy
impl Sync for BatchPolicy
impl Unpin for BatchPolicy
impl UnsafeUnpin for BatchPolicy
impl UnwindSafe for BatchPolicy
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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>
Converts
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>
Converts
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§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.