Gloas lookup sync (#9155)

Co-Authored-By: dapplion <35266934+dapplion@users.noreply.github.com>

Co-Authored-By: Pawan Dhananjay <pawandhananjay@gmail.com>
This commit is contained in:
Lion - dapplion
2026-06-10 03:41:26 +02:00
committed by GitHub
parent ebe5ded2fa
commit 47e0901965
19 changed files with 1075 additions and 193 deletions

View File

@@ -3397,6 +3397,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
{
return Err(BlockError::ParentUnknown {
parent_root: blob.block_parent_root(),
parent_block_hash: None,
});
}
}
@@ -3523,7 +3524,10 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
.fork_choice_read_lock()
.contains_block(&parent_root)
{
return Err(BlockError::ParentUnknown { parent_root });
return Err(BlockError::ParentUnknown {
parent_root,
parent_block_hash: None,
});
}
self.emit_sse_data_column_sidecar_events(

View File

@@ -96,6 +96,7 @@ use store::{Error as DBError, KeyValueStore};
use strum::{AsRefStr, IntoStaticStr};
use task_executor::JoinHandle;
use tracing::{Instrument, Span, debug, debug_span, error, info_span, instrument};
use types::ExecutionBlockHash;
use types::{
BeaconBlockRef, BeaconState, BeaconStateError, BlobsList, ChainSpec, DataColumnSidecarList,
Epoch, EthSpec, FullPayload, Hash256, InconsistentFork, KzgProofs, RelativeEpoch,
@@ -125,6 +126,7 @@ pub enum BlockError {
/// its parent.
ParentUnknown {
parent_root: Hash256,
parent_block_hash: Option<ExecutionBlockHash>,
},
/// The block slot is greater than the present slot.
///
@@ -1446,6 +1448,7 @@ impl<T: BeaconChainTypes> ExecutionPendingBlock<T> {
ParentImportStatus::UnknownBlock | ParentImportStatus::UnknownPayload => {
return Err(BlockError::ParentUnknown {
parent_root: block.parent_root(),
parent_block_hash: block.as_block().payload_bid_parent_block_hash().ok(),
});
}
}
@@ -1821,6 +1824,7 @@ pub fn check_block_is_finalized_checkpoint_or_descendant<
} else {
Err(BlockError::ParentUnknown {
parent_root: block.parent_root(),
parent_block_hash: block.as_block().payload_bid_parent_block_hash().ok(),
})
}
}
@@ -1915,6 +1919,7 @@ fn verify_parent_block_and_envelope_are_known<T: BeaconChainTypes>(
ParentImportStatus::UnknownBlock | ParentImportStatus::UnknownPayload => {
Err(BlockError::ParentUnknown {
parent_root: block.parent_root(),
parent_block_hash: block.payload_bid_parent_block_hash().ok(),
})
}
}
@@ -1947,6 +1952,7 @@ fn load_parent<T: BeaconChainTypes, B: AsBlock<T::EthSpec>>(
{
return Err(BlockError::ParentUnknown {
parent_root: block.parent_root(),
parent_block_hash: block.as_block().payload_bid_parent_block_hash().ok(),
});
}