diff --git a/crates/node/builder/src/components/pool.rs b/crates/node/builder/src/components/pool.rs index 234455913c..436a80c52e 100644 --- a/crates/node/builder/src/components/pool.rs +++ b/crates/node/builder/src/components/pool.rs @@ -52,6 +52,8 @@ pub struct PoolBuilderConfigOverrides { pub minimal_protocol_basefee: Option, /// Addresses that will be considered as local. Above exemptions apply. pub local_addresses: HashSet
, + /// Additional tasks to validate new transactions. + pub additional_validation_tasks: Option, } impl PoolBuilderConfigOverrides { @@ -65,6 +67,7 @@ impl PoolBuilderConfigOverrides { max_account_slots, minimal_protocol_basefee, local_addresses, + additional_validation_tasks: _, } = self; if let Some(pending_limit) = pending_limit { diff --git a/crates/optimism/node/src/node.rs b/crates/optimism/node/src/node.rs index caeab3741a..b6e64f7e0e 100644 --- a/crates/optimism/node/src/node.rs +++ b/crates/optimism/node/src/node.rs @@ -189,7 +189,11 @@ where )) .with_head_timestamp(ctx.head().timestamp) .kzg_settings(ctx.kzg_settings()?) - .with_additional_tasks(ctx.config().txpool.additional_validation_tasks) + .with_additional_tasks( + pool_config_overrides + .additional_validation_tasks + .unwrap_or_else(|| ctx.config().txpool.additional_validation_tasks), + ) .build_with_tasks(ctx.provider().clone(), ctx.task_executor().clone(), blob_store.clone()) .map(|validator| { OpTransactionValidator::new(validator)