#[non_exhaustive]pub struct WriteReport {
pub accepted: usize,
pub coalesced: usize,
pub skipped: usize,
}Expand description
What a sink did with a page it was offered, beyond the rows it wrote.
Returned by Sink::write_batch_reported.
A sink that merges rows within a page (keyed upsert / delete, last write
wins) reports the merged rows as coalesced, so the pipeline can tell them
apart from rows it dropped.
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.accepted: usizeRows the sink wrote (what Sink::write_batch
returns).
coalesced: usizeRows merged into another row of the same page and therefore not written on their own.
skipped: usizeRows the sink deliberately did not write, by design of its configuration (a preview cap, a declined record), and says so.
Implementations§
Source§impl WriteReport
impl WriteReport
Sourcepub fn accepted(accepted: usize) -> Self
pub fn accepted(accepted: usize) -> Self
A report of accepted written rows and nothing coalesced.
Sourcepub fn with_coalesced(self, coalesced: usize) -> Self
pub fn with_coalesced(self, coalesced: usize) -> Self
The same report with coalesced merged rows.
Sourcepub fn with_skipped(self, skipped: usize) -> Self
pub fn with_skipped(self, skipped: usize) -> Self
The same report with skipped rows the sink declined by design.
Trait Implementations§
Source§impl Clone for WriteReport
impl Clone for WriteReport
impl Copy for WriteReport
Source§impl Debug for WriteReport
impl Debug for WriteReport
Source§impl Default for WriteReport
impl Default for WriteReport
impl Eq for WriteReport
Source§impl PartialEq for WriteReport
impl PartialEq for WriteReport
impl StructuralPartialEq for WriteReport
Auto Trait Implementations§
impl Freeze for WriteReport
impl RefUnwindSafe for WriteReport
impl Send for WriteReport
impl Sync for WriteReport
impl Unpin for WriteReport
impl UnsafeUnpin for WriteReport
impl UnwindSafe for WriteReport
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
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> ⓘ
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request