pub enum RingError {
Full,
Empty,
LayoutMismatch,
PayloadTooLarge,
NotStamped,
NotDrainer,
StaleBacklog,
IoError(ErrorKind),
}Variants§
Full
Ring is full; producer cannot insert.
Empty
Ring is empty; consumer cannot drain.
LayoutMismatch
File-backed mapping exists but the magic / capacity does not match the requested layout.
PayloadTooLarge
Payload exceeds PAYLOAD_BYTES.
NotStamped
The operation requires ordering stamps but the ring was not
constructed with with_ordering_stamps().
NotDrainer
Merge-mode pop on a multi-consumer ring requires the drainer lease and another consumer currently holds it. The caller backs off and retries; when the holder releases (or its heartbeat goes stale past the grace window) a later pop acquires the lease automatically.
StaleBacklog
A shape morph was requested while the previous shape’s backing still holds an undrained backlog. The consumer drains it through the normal pop path (the stale walk); retry the morph once it has caught up - the sidecar’s scan loop does exactly that.
IoError(ErrorKind)
I/O error opening or mapping the file.