pub enum Diagnostic {
Show 18 variants
ParseFailed(ParseError),
ValidateFailed(ValidateError),
DuplicateMessage {
message_id: u8,
},
DuplicateFragment {
message_id: u8,
fragment: u8,
},
FragmentConflict {
message_id: u8,
fragment: u8,
},
OversizedFragment {
message_id: u8,
fragment: u8,
},
FragmentCountExceeded {
message_id: u8,
count: u8,
},
FragmentCountMismatch {
message_id: u8,
},
HintCollision {
conversation: ConversationKey,
},
ReassemblyEvicted {
message_id: u8,
},
StreamEvicted,
RepeatedPresentationOptions {
mask: u16,
},
IgnoredContinuationMetadata {
message_id: u8,
},
OutputOverflow,
UnknownLookup {
request_id: u32,
},
ReassembledInvalidUtf8 {
message_id: u8,
},
CoalescedResend {
message_id: u8,
},
UnattributableResend,
}Expand description
Non-fatal observations, surfaced for logging and counters.
Variants§
ParseFailed(ParseError)
ValidateFailed(ValidateError)
DuplicateMessage
DuplicateFragment
FragmentConflict
Conflicting bytes for an already-filled fragment slot were discarded.
OversizedFragment
A fragment body above the wire maximum was dropped unstored.
FragmentCountExceeded
A fragment count above the wire maximum was dropped unassembled.
FragmentCountMismatch
Fragments of one message disagreed about the fragment count.
HintCollision
Two known peer keys collide on one source hint; automatic repair is suppressed for the merged stream.
Fields
conversation: ConversationKeyReassemblyEvicted
A reassembly was evicted under memory pressure before completion.
StreamEvicted
A stream table was full and its least-recently-active entry evicted.
RepeatedPresentationOptions
Presentation options were duplicated; first occurrences were kept.
IgnoredContinuationMetadata
A continuation fragment carried ignored message-level metadata.
OutputOverflow
The render arena or output queue overflowed; see lost_outputs.
UnknownLookup
An archive result arrived for an unknown request.
ReassembledInvalidUtf8
A completely reassembled body failed UTF-8 validation (the spec validates only after every fragment is present); invalid sequences were replaced with U+FFFD in the rendered text.
CoalescedResend
A resend request was ignored because an equivalent one was answered within the coalescing window.
UnattributableResend
A resend request arrived in a form the engine could not attribute.
Trait Implementations§
Source§impl Clone for Diagnostic
impl Clone for Diagnostic
Source§fn clone(&self) -> Diagnostic
fn clone(&self) -> Diagnostic
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Diagnostic
impl Debug for Diagnostic
Source§impl PartialEq for Diagnostic
impl PartialEq for Diagnostic
impl Copy for Diagnostic
impl Eq for Diagnostic
impl StructuralPartialEq for Diagnostic
Auto Trait Implementations§
impl Freeze for Diagnostic
impl RefUnwindSafe for Diagnostic
impl Send for Diagnostic
impl Sync for Diagnostic
impl Unpin for Diagnostic
impl UnwindSafe for Diagnostic
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
clone_to_uninit)