smol cleanup

This commit is contained in:
Eitan Seri-Levi
2026-05-01 10:51:05 +02:00
parent 73ba76312e
commit 8510bb462d
4 changed files with 40 additions and 31 deletions

View File

@@ -71,7 +71,6 @@ use crate::pending_payload_cache::PendingPayloadCache;
use crate::pending_payload_cache::{
Availability as PayloadAvailability,
DataColumnReconstructionResult as DataColumnReconstructionResultGloas,
signed_payload_bid_from_block,
};
use crate::pending_payload_envelopes::PendingPayloadEnvelopes;
use crate::persisted_beacon_chain::PersistedBeaconChain;
@@ -3835,7 +3834,13 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
let block = execution_pending.block.block_cloned();
if block.fork_name_unchecked().gloas_enabled() {
let bid = signed_payload_bid_from_block(block.as_ref())?;
let bid = Arc::new(
block
.message()
.body()
.signed_execution_payload_bid()?
.clone(),
);
chain.pending_payload_cache.insert_bid(block_root, bid);
}

View File

@@ -9,7 +9,6 @@ use crate::kzg_utils::{
use crate::observed_data_sidecars::{
Error as ObservedDataSidecarsError, ObservationKey, ObservationStrategy, Observe,
};
use crate::pending_payload_cache::signed_payload_bid_from_block;
use crate::{BeaconChain, BeaconChainError, BeaconChainTypes, metrics};
use educe::Educe;
use fork_choice::ProtoBlock;
@@ -1313,19 +1312,36 @@ pub(crate) fn load_gloas_payload_bid<T: BeaconChainTypes>(
}
let bid = if let Some(block) = chain.early_attester_cache.get_block(block_root) {
signed_payload_bid_from_block(block.as_ref()).map_err(BeaconChainError::BeaconStateError)?
Arc::new(
block
.message()
.body()
.signed_execution_payload_bid()
.map_err(BeaconChainError::BeaconStateError)?
.clone(),
)
} else {
match chain
.store
.try_get_full_block(&block_root)
.map_err(BeaconChainError::DBError)?
{
Some(DatabaseBlock::Full(block)) => {
signed_payload_bid_from_block(&block).map_err(BeaconChainError::BeaconStateError)?
}
Some(DatabaseBlock::Blinded(block)) => {
signed_payload_bid_from_block(&block).map_err(BeaconChainError::BeaconStateError)?
}
Some(DatabaseBlock::Full(block)) => Arc::new(
block
.message()
.body()
.signed_execution_payload_bid()
.map_err(BeaconChainError::BeaconStateError)?
.clone(),
),
Some(DatabaseBlock::Blinded(block)) => Arc::new(
block
.message()
.body()
.signed_execution_payload_bid()
.map_err(BeaconChainError::BeaconStateError)?
.clone(),
),
None => {
return Ok(None);
}

View File

@@ -41,7 +41,6 @@ use crate::metrics::{
KZG_DATA_COLUMN_RECONSTRUCTION_ATTEMPTS, KZG_DATA_COLUMN_RECONSTRUCTION_FAILURES,
};
use crate::observed_data_sidecars::ObservationStrategy;
pub use pending_components::signed_payload_bid_from_block;
use pending_components::{PendingComponents, ReconstructColumnsDecision};
use types::SignedExecutionPayloadBid;
use types::new_non_zero_usize;
@@ -725,7 +724,14 @@ mod data_availability_checker_tests {
let (block, data_columns) =
generate_rand_block_and_data_columns::<E>(ForkName::Gloas, num_blobs, &mut rng, spec);
let block_root = block.canonical_root();
let bid = signed_payload_bid_from_block(&block).expect("should get payload bid");
let bid = Arc::new(
block
.message()
.body()
.signed_execution_payload_bid()
.expect("should get payload bid")
.clone(),
);
cache.insert_bid(block_root, bid.clone());
(bid, block_root, data_columns)
}

View File

@@ -9,25 +9,7 @@ use std::collections::HashMap;
use std::sync::Arc;
use tracing::{Span, debug, debug_span};
use types::DataColumnSidecar;
use types::{
AbstractExecPayload, BeaconStateError, ColumnIndex, EthSpec, Hash256, SignedBeaconBlock,
SignedExecutionPayloadBid,
};
/// Extract the signed execution payload bid from a Gloas block as a shareable `Arc`.
///
/// Returns `Err` if the block is not a Gloas block.
pub fn signed_payload_bid_from_block<E: EthSpec, P: AbstractExecPayload<E>>(
block: &SignedBeaconBlock<E, P>,
) -> Result<Arc<SignedExecutionPayloadBid<E>>, BeaconStateError> {
Ok(Arc::new(
block
.message()
.body()
.signed_execution_payload_bid()?
.clone(),
))
}
use types::{ColumnIndex, EthSpec, Hash256, SignedExecutionPayloadBid};
/// This represents the components of a payload pending data availability.
///