Struct CommitTail
pub struct CommitTail {
pub client: Option<(String, u64)>,
pub producer: Option<ProducerWrite>,
}Expand description
The commit-time bookkeeping the backend writes co-transactionally: a client session’s lmid upsert, a foreign session’s producer watermark. Folded into ONE backend call — not engine-driven steps — because the replicator’s divergence guard must measure the user statements’ captures BEFORE the lmid row lands in the capture buffer; only the backend can order that (REPLICATOR-INTERACTIVE-TXN-DESIGN.md §4.2).
The two fields are mutually exclusive by construction — the wire refuses a request carrying both (design 306 §3.4) — so a backend writes whichever is present without a precedence rule. That silent precedence is exactly what let the two hosts diverge before 306.
Fields§
§client: Option<(String, u64)>§producer: Option<ProducerWrite>Auto Trait Implementations§
impl Freeze for CommitTail
impl RefUnwindSafe for CommitTail
impl Send for CommitTail
impl Sync for CommitTail
impl Unpin for CommitTail
impl UnsafeUnpin for CommitTail
impl UnwindSafe for CommitTail
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