wrap availability check error

This commit is contained in:
realbigsean
2023-04-27 14:15:52 -04:00
parent 8e9c98e8e5
commit d224fce084
3 changed files with 10 additions and 8 deletions

View File

@@ -535,7 +535,8 @@ impl<T: BeaconChainTypes> BlockLookups<T> {
| ParentVerifyError::UnrequestedBlobId | ParentVerifyError::UnrequestedBlobId
| ParentVerifyError::ExtraBlobsReturned | ParentVerifyError::ExtraBlobsReturned
| ParentVerifyError::InvalidIndex(_) | ParentVerifyError::InvalidIndex(_)
| ParentVerifyError::AvailabilityCheck => { //TODO(sean) treat this differntly?
| ParentVerifyError::AvailabilityCheck(_) => {
let e = e.into(); let e = e.into();
warn!(self.log, "Peer sent invalid response to parent request."; warn!(self.log, "Peer sent invalid response to parent request.";
"peer_id" => %peer_id, "reason" => %e); "peer_id" => %peer_id, "reason" => %e);
@@ -629,7 +630,8 @@ impl<T: BeaconChainTypes> BlockLookups<T> {
| ParentVerifyError::UnrequestedBlobId | ParentVerifyError::UnrequestedBlobId
| ParentVerifyError::ExtraBlobsReturned | ParentVerifyError::ExtraBlobsReturned
| ParentVerifyError::InvalidIndex(_) | ParentVerifyError::InvalidIndex(_)
| ParentVerifyError::AvailabilityCheck => { //TODO(sean) treat differently?
| ParentVerifyError::AvailabilityCheck(_) => {
let e = e.into(); let e = e.into();
warn!(self.log, "Peer sent invalid response to parent request."; warn!(self.log, "Peer sent invalid response to parent request.";
"peer_id" => %peer_id, "reason" => %e); "peer_id" => %peer_id, "reason" => %e);

View File

@@ -45,7 +45,7 @@ pub enum ParentVerifyError {
ExtraBlobsReturned, ExtraBlobsReturned,
InvalidIndex(u64), InvalidIndex(u64),
PreviousFailure { parent_root: Hash256 }, PreviousFailure { parent_root: Hash256 },
AvailabilityCheck, AvailabilityCheck(String),
} }
#[derive(Debug, PartialEq, Eq)] #[derive(Debug, PartialEq, Eq)]
@@ -357,7 +357,7 @@ impl From<LookupVerifyError> for ParentVerifyError {
E::UnrequestedBlobId => ParentVerifyError::UnrequestedBlobId, E::UnrequestedBlobId => ParentVerifyError::UnrequestedBlobId,
E::ExtraBlobsReturned => ParentVerifyError::ExtraBlobsReturned, E::ExtraBlobsReturned => ParentVerifyError::ExtraBlobsReturned,
E::InvalidIndex(index) => ParentVerifyError::InvalidIndex(index), E::InvalidIndex(index) => ParentVerifyError::InvalidIndex(index),
E::AvailabilityCheck => ParentVerifyError::AvailabilityCheck, E::AvailabilityCheck(e) => ParentVerifyError::AvailabilityCheck(e),
} }
} }
} }

View File

@@ -58,7 +58,7 @@ pub enum LookupVerifyError {
UnrequestedBlobId, UnrequestedBlobId,
ExtraBlobsReturned, ExtraBlobsReturned,
InvalidIndex(u64), InvalidIndex(u64),
AvailabilityCheck, //TODO(sean) wrap the underlying error AvailabilityCheck(String),
} }
#[derive(Debug, PartialEq, Eq, IntoStaticStr)] #[derive(Debug, PartialEq, Eq, IntoStaticStr)]
@@ -120,7 +120,7 @@ impl<const MAX_ATTEMPTS: u8, T: BeaconChainTypes> SingleBlockLookup<MAX_ATTEMPTS
Err(AvailabilityCheckError::MissingBlobs) => { Err(AvailabilityCheckError::MissingBlobs) => {
Ok(LookupDownloadStatus::SearchBlock(block_root)) Ok(LookupDownloadStatus::SearchBlock(block_root))
} }
Err(_e) => Err(LookupVerifyError::AvailabilityCheck), Err(e) => Err(LookupVerifyError::AvailabilityCheck(format!("{e:?}"))),
} }
} else { } else {
Ok(LookupDownloadStatus::SearchBlock(block_root)) Ok(LookupDownloadStatus::SearchBlock(block_root))
@@ -148,7 +148,7 @@ impl<const MAX_ATTEMPTS: u8, T: BeaconChainTypes> SingleBlockLookup<MAX_ATTEMPTS
Err(AvailabilityCheckError::MissingBlobs) => { Err(AvailabilityCheckError::MissingBlobs) => {
Ok(LookupDownloadStatus::SearchBlock(block_root)) Ok(LookupDownloadStatus::SearchBlock(block_root))
} }
Err(_e) => Err(LookupVerifyError::AvailabilityCheck), Err(e) => Err(LookupVerifyError::AvailabilityCheck(format!("{e:?}"))),
} }
} else { } else {
Ok(LookupDownloadStatus::SearchBlock(block_root)) Ok(LookupDownloadStatus::SearchBlock(block_root))
@@ -171,7 +171,7 @@ impl<const MAX_ATTEMPTS: u8, T: BeaconChainTypes> SingleBlockLookup<MAX_ATTEMPTS
Err(AvailabilityCheckError::MissingBlobs) => { Err(AvailabilityCheckError::MissingBlobs) => {
Ok(LookupDownloadStatus::SearchBlock(block_root)) Ok(LookupDownloadStatus::SearchBlock(block_root))
} }
Err(_e) => Err(LookupVerifyError::AvailabilityCheck), Err(e) => Err(LookupVerifyError::AvailabilityCheck(format!("{e:?}"))),
} }
} }