fix remaining errors

This commit is contained in:
Daniel Knopik
2026-04-28 17:38:53 +02:00
parent 407fd27118
commit a03906d4c0
3 changed files with 16 additions and 11 deletions

View File

@@ -83,12 +83,7 @@ impl<T: BeaconChainTypes> BeaconChain<T> {
// about what the function actually does.
let executed_envelope = chain
.into_executed_payload_envelope(execution_pending)
.await
.inspect_err(|_| {
// If the envelope fails execution for whatever reason (e.g. engine offline),
// and we keep it in the cache, then the node will NOT perform lookup and
// reprocess this envelope until the envelope is evicted from DA checker, causing the
})?;
.await?;
// Record the time it took to wait for execution layer verification.
if let Some(timestamp) = slot_clock.now_duration() {

View File

@@ -1320,10 +1320,12 @@ impl<T: BeaconChainTypes> NetworkBeaconProcessor<T> {
let data_column_slot = verified_data_column.slot();
let data_column_index = verified_data_column.index();
// TODO(gloas): implement partial messages
if let DataColumnSidecar::Fulu(col) = verified_data_column.as_data_column()
&& self
.chain
.data_availability_checker
.pending_block_cache()
.partial_assembler()
.is_some_and(|a| !a.is_complete(block_root, verified_data_column.index()))
{
@@ -1380,7 +1382,7 @@ impl<T: BeaconChainTypes> NetworkBeaconProcessor<T> {
"Processed data column, waiting for other components"
);
self.check_reconstruction_trigger(*slot, block_root).await;
self.check_reconstruction_trigger(slot, &block_root).await;
}
},
Err(BlockError::DuplicateFullyImported(_)) => {
@@ -1570,7 +1572,7 @@ impl<T: BeaconChainTypes> NetworkBeaconProcessor<T> {
slot,
process_fn: Box::pin(async move {
cloned_self
.attempt_data_column_reconstruction(block_root)
.attempt_data_column_reconstruction(slot, block_root)
.await;
}),
},
@@ -3871,7 +3873,8 @@ impl<T: BeaconChainTypes> NetworkBeaconProcessor<T> {
| EnvelopeError::BeaconChainError(_)
| EnvelopeError::BeaconStateError(_)
| EnvelopeError::BlockProcessingError(_)
| EnvelopeError::InternalError(_) => {
| EnvelopeError::InternalError(_)
| EnvelopeError::AvailabilityCheck(_) => {
self.propagate_validation_result(
message_id,
peer_id,
@@ -3985,7 +3988,8 @@ impl<T: BeaconChainTypes> NetworkBeaconProcessor<T> {
| EnvelopeError::BeaconChainError(_)
| EnvelopeError::BeaconStateError(_)
| EnvelopeError::BlockProcessingError(_)
| EnvelopeError::InternalError(_) => {}
| EnvelopeError::InternalError(_)
| EnvelopeError::AvailabilityCheck(_) => {}
},
}
}

View File

@@ -998,7 +998,13 @@ impl<T: BeaconChainTypes> NetworkBeaconProcessor<T> {
}
// Publish partial columns without eager send
if let Some(assembler) = self.chain.data_availability_checker.partial_assembler() {
// TODO(gloas): implement
if let Some(assembler) = self
.chain
.data_availability_checker
.pending_block_cache()
.partial_assembler()
{
let columns = assembler.get_partials_and_mark_as_local_fetched(block_root, &header);
if !columns.is_empty() {
debug!(block = %block_root, "Publishing all partials after getBlobs");