Add a flag to disable getBlobs (#7853)

N/A


  Add a flag to disable get blobs. I configured the flag to disable it regardless of version because its most likely something we use for testing anyway.
This commit is contained in:
Pawan Dhananjay
2025-08-11 16:17:00 -07:00
committed by GitHub
parent 40c2fd5ff4
commit 4262ad3e01
6 changed files with 39 additions and 0 deletions

View File

@@ -114,6 +114,8 @@ pub struct ChainConfig {
/// On Holesky there is a block which is added to this set by default but which can be removed
/// by using `--invalid-block-roots ""`.
pub invalid_block_roots: HashSet<Hash256>,
/// Disable the getBlobs optimisation to fetch blobs from the EL mempool.
pub disable_get_blobs: bool,
}
impl Default for ChainConfig {
@@ -152,6 +154,7 @@ impl Default for ChainConfig {
block_publishing_delay: None,
data_column_publishing_delay: None,
invalid_block_roots: HashSet::new(),
disable_get_blobs: false,
}
}
}

View File

@@ -751,6 +751,9 @@ impl<T: BeaconChainTypes> NetworkBeaconProcessor<T> {
block_root: Hash256,
publish_blobs: bool,
) {
if self.chain.config.disable_get_blobs {
return;
}
let epoch = block.slot().epoch(T::EthSpec::slots_per_epoch());
let custody_columns = self.chain.sampling_columns_for_epoch(epoch);
let self_cloned = self.clone();

View File

@@ -909,6 +909,14 @@ pub fn cli_app() -> Command {
.action(ArgAction::Set)
.display_order(0)
)
.arg(
Arg::new("disable-get-blobs")
.long("disable-get-blobs")
.help("Disables the getBlobs optimisation to fetch blobs from the EL mempool")
.action(ArgAction::SetTrue)
.help_heading(FLAG_HEADER)
.display_order(0)
)
.arg(
Arg::new("builder-header-timeout")
.long("builder-header-timeout")

View File

@@ -182,6 +182,10 @@ pub fn get_config<E: EthSpec>(
client_config.chain.enable_light_client_server = false;
}
if cli_args.get_flag("disable-get-blobs") {
client_config.chain.disable_get_blobs = true;
}
if let Some(sync_tolerance_epochs) =
clap_utils::parse_optional(cli_args, "sync-tolerance-epochs")?
{