pub enum FetchedEntry {
Decoded(ClaimedMessage),
Malformed {
id: String,
error: EventBusError,
},
}Expand description
One result per Redis Stream entry returned from read_new / reclaim_idle.
Backends report decode failures per entry instead of poisoning the
whole batch with a single Result<Vec<_>, _> short-circuit. Otherwise a
single corrupt PEL entry would loop forever:
XREADGROUPalready moved the entry into the consumer’s PEL.- The bus would receive
Err, log/observe, back off, retry. - On the next cycle the same entry would re-decode → fail again.
With per-entry results the bus can ack the bad entry (so it leaves the
PEL), publish a synthetic dead-letter envelope (when dead_letter_topic
is configured), and surface the error to the crate::ErrorObserver.
Variants§
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for FetchedEntry
impl !UnwindSafe for FetchedEntry
impl Freeze for FetchedEntry
impl Send for FetchedEntry
impl Sync for FetchedEntry
impl Unpin for FetchedEntry
impl UnsafeUnpin for FetchedEntry
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