remove duplicate fn impl

This commit is contained in:
Eitan Seri-Levi
2026-05-01 03:13:36 +02:00
parent fd1a8e1564
commit 64c53c6553
2 changed files with 7 additions and 30 deletions

View File

@@ -3453,7 +3453,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
&merge_result.full_columns,
)
.map_err(BlockError::from)?;
self.process_payload_availability(slot, availability, || Ok(()))
self.process_payload_envelope_availability(slot, availability, || Ok(()))
.await?
} else {
let availability = self
@@ -3702,7 +3702,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
};
Ok(self
.process_payload_availability(slot, availability, || Ok(()))
.process_payload_envelope_availability(slot, availability, || Ok(()))
.await
.map(|status| Some((status, data_columns_to_publish)))?)
}
@@ -4011,7 +4011,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
.pending_payload_cache
.put_gossip_verified_data_columns(block_root, bid, data_columns)?;
Ok(self
.process_payload_availability(slot, availability, publish_fn)
.process_payload_envelope_availability(slot, availability, publish_fn)
.await?)
} else {
let availability = self
@@ -4118,7 +4118,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
.put_kzg_verified_custody_data_columns(block_root, bid, &data_columns)
.map_err(BlockError::from)?;
Ok(self
.process_payload_availability(slot, availability, || Ok(()))
.process_payload_envelope_availability(slot, availability, || Ok(()))
.await?)
} else {
let availability = self
@@ -4162,7 +4162,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
.put_rpc_custody_columns(block_root, bid, custody_columns)
.map_err(BlockError::from)?;
Ok(self
.process_payload_availability(slot, availability, || Ok(()))
.process_payload_envelope_availability(slot, availability, || Ok(()))
.await?)
} else {
let availability = self
@@ -4229,7 +4229,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
}
}
async fn process_payload_availability(
pub(crate) async fn process_payload_envelope_availability(
self: &Arc<Self>,
slot: Slot,
availability: PayloadAvailability<T::EthSpec>,

View File

@@ -6,14 +6,13 @@ use fork_choice::PayloadVerificationStatus;
use slot_clock::SlotClock;
use store::StoreOp;
use tracing::{debug, error, info, info_span, instrument, warn};
use types::{BlockImportSource, Hash256, SignedExecutionPayloadEnvelope, Slot};
use types::{BlockImportSource, Hash256, SignedExecutionPayloadEnvelope};
use super::{
AvailableEnvelope, AvailableExecutedEnvelope, EnvelopeError,
gossip_verified_envelope::GossipVerifiedEnvelope,
};
use crate::data_column_verification::load_gloas_payload_bid;
use crate::pending_payload_cache::Availability as PayloadAvailability;
use crate::{
AvailabilityProcessingStatus, BeaconChain, BeaconChainError, BeaconChainTypes, BlockError,
NotifyExecutionLayer,
@@ -156,28 +155,6 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
}
}
/// Imports a fully available payload envelope. Otherwise, returns `AvailabilityProcessingStatus::MissingComponents`
///
/// An error is returned if the enveope was unable to be imported. It may be partially imported
/// (i.e., this function is not atomic).
async fn process_payload_envelope_availability(
self: &Arc<Self>,
slot: Slot,
availability: PayloadAvailability<T::EthSpec>,
publish_fn: impl FnOnce() -> Result<(), BlockError>,
) -> Result<AvailabilityProcessingStatus, BlockError> {
match availability {
PayloadAvailability::Available(available_envelope) => {
publish_fn()?;
self.import_available_execution_payload_envelope(available_envelope)
.await
}
PayloadAvailability::MissingComponents(block_root) => Ok(
AvailabilityProcessingStatus::MissingComponents(slot, block_root),
),
}
}
#[instrument(skip_all)]
async fn check_envelope_availability_and_import(
self: &Arc<Self>,