pub enum BlockError {
Incomplete,
InvalidEntryHash,
InvalidLastTick,
TooFewTicks,
TooManyTicks,
InvalidTickHashCount,
TrailingEntry,
DuplicateBlock,
}Variants§
Incomplete
Block did not have enough ticks was not marked full and no shred with is_last was seen.
InvalidEntryHash
Block entries hashes must all be valid
InvalidLastTick
Blocks must end in a tick that has been marked as the last tick.
TooFewTicks
Blocks can not have missing ticks Usually indicates that the node was interrupted with a more valuable block during production and abandoned it for that more-favorable block. Leader sent data to indicate the end of the block.
TooManyTicks
Blocks can not have extra ticks
InvalidTickHashCount
All ticks must contain the same number of hashes within a block
TrailingEntry
Blocks must end in a tick entry, trailing transaction entries are not allowed to guarantee that each block has the same number of hashes
DuplicateBlock
Trait Implementations§
Source§impl Debug for BlockError
impl Debug for BlockError
Source§impl Display for BlockError
impl Display for BlockError
Source§impl Error for BlockError
impl Error for BlockError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl From<BlockError> for BlockstoreProcessorError
impl From<BlockError> for BlockstoreProcessorError
Source§fn from(source: BlockError) -> Self
fn from(source: BlockError) -> Self
Converts to this type from the input type.
Source§impl PartialEq for BlockError
impl PartialEq for BlockError
impl Eq for BlockError
impl StructuralPartialEq for BlockError
Auto Trait Implementations§
impl Freeze for BlockError
impl RefUnwindSafe for BlockError
impl Send for BlockError
impl Sync for BlockError
impl Unpin for BlockError
impl UnwindSafe for BlockError
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
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request