#[non_exhaustive]pub enum GapMode {
Ok,
Fail,
}Expand description
How the server should handle gaps in the batch sequence.
A gap means one or more messages in the batch were lost in transit between the client and the stream leader (e.g. due to buffer drops under load).
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Ok
Allow gaps — the batch continues and the server informs the client via a gap event. Use this when some message loss is acceptable (metrics, telemetry).
Fail
Fail the batch on the first gap. Use this when in-order, gap-free delivery is required (object store chunks, ordered events). Default.
Trait Implementations§
impl Copy for GapMode
impl Eq for GapMode
impl StructuralPartialEq for GapMode
Auto Trait Implementations§
impl Freeze for GapMode
impl RefUnwindSafe for GapMode
impl Send for GapMode
impl Sync for GapMode
impl Unpin for GapMode
impl UnsafeUnpin for GapMode
impl UnwindSafe for GapMode
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
Mutably borrows from an owned value. Read more