mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-06-11 16:31:07 +00:00
Enrich TooManySiblingBlocks error info (#13052)
This commit is contained in:
@@ -134,7 +134,7 @@ pub enum StateDbError {
|
||||
/// Invalid pruning mode specified. Contains expected mode.
|
||||
IncompatiblePruningModes { stored: PruningMode, requested: PruningMode },
|
||||
/// Too many unfinalized sibling blocks inserted.
|
||||
TooManySiblingBlocks,
|
||||
TooManySiblingBlocks { number: u64 },
|
||||
/// Trying to insert existing block.
|
||||
BlockAlreadyExists,
|
||||
/// Invalid metadata
|
||||
@@ -184,7 +184,8 @@ impl fmt::Debug for StateDbError {
|
||||
"Incompatible pruning modes [stored: {:?}; requested: {:?}]",
|
||||
stored, requested
|
||||
),
|
||||
Self::TooManySiblingBlocks => write!(f, "Too many sibling blocks inserted"),
|
||||
Self::TooManySiblingBlocks { number } =>
|
||||
write!(f, "Too many sibling blocks at #{number} inserted"),
|
||||
Self::BlockAlreadyExists => write!(f, "Block already exists"),
|
||||
Self::Metadata(message) => write!(f, "Invalid metadata: {}", message),
|
||||
Self::BlockUnavailable =>
|
||||
|
||||
@@ -283,7 +283,12 @@ impl<BlockHash: Hash, Key: Hash> NonCanonicalOverlay<BlockHash, Key> {
|
||||
};
|
||||
|
||||
if level.blocks.len() >= MAX_BLOCKS_PER_LEVEL as usize {
|
||||
return Err(StateDbError::TooManySiblingBlocks)
|
||||
trace!(
|
||||
target: "state-db",
|
||||
"Too many sibling blocks at #{number}: {:?}",
|
||||
level.blocks.iter().map(|b| &b.hash).collect::<Vec<_>>()
|
||||
);
|
||||
return Err(StateDbError::TooManySiblingBlocks { number })
|
||||
}
|
||||
if level.blocks.iter().any(|b| b.hash == *hash) {
|
||||
return Err(StateDbError::BlockAlreadyExists)
|
||||
|
||||
Reference in New Issue
Block a user