Add checkpoint sync

This commit is contained in:
Pawan Dhananjay
2026-03-30 19:41:09 -07:00
parent aa5292df99
commit 871697280e
7 changed files with 155 additions and 7 deletions

View File

@@ -35,7 +35,7 @@ use std::marker::PhantomData;
use std::sync::Arc;
use strum::IntoEnumIterator;
use tracing::{debug, error, info, warn};
use types::{ColumnIndex, Epoch, EthSpec};
use types::{ColumnIndex, Epoch, EthSpec, ForkName};
/// Blocks are downloaded in batches from peers. This constant specifies how many epochs worth of
/// blocks per batch are requested _at most_. A batch may request less blocks to account for
@@ -218,6 +218,14 @@ impl<T: BeaconChainTypes> BackFillSync<T> {
match self.state() {
BackFillState::Syncing => {} // already syncing ignore.
BackFillState::Paused => {
if self
.beacon_chain
.spec
.fork_name_at_epoch(self.to_be_downloaded)
>= ForkName::Gloas
{
return Ok(SyncStart::NotSyncing);
}
if self
.network_globals
.peers

View File

@@ -16,10 +16,10 @@ pub use data_columns_by_range::DataColumnsByRangeRequestItems;
pub use data_columns_by_root::{
DataColumnsByRootRequestItems, DataColumnsByRootSingleBlockRequest,
};
pub use payload_envelopes_by_range::PayloadEnvelopesByRangeRequestItems;
pub use payload_envelopes_by_root::{
PayloadEnvelopesByRootRequestItems, PayloadEnvelopesByRootSingleRequest,
};
pub use payload_envelopes_by_range::PayloadEnvelopesByRangeRequestItems;
use crate::metrics;
@@ -31,8 +31,8 @@ mod blocks_by_range;
mod blocks_by_root;
mod data_columns_by_range;
mod data_columns_by_root;
mod payload_envelopes_by_root;
mod payload_envelopes_by_range;
mod payload_envelopes_by_root;
#[derive(Debug, PartialEq, Eq, IntoStaticStr)]
pub enum LookupVerifyError {