From 5121d655f718d787a1d5237dee34e9edea090ea2 Mon Sep 17 00:00:00 2001 From: zhiqiangxu <652732310@qq.com> Date: Sat, 23 Mar 2024 02:16:52 +0800 Subject: [PATCH] chore: reduce scope of commitment (#5426) * reduce scope of commitment * avoid clone for last reference * Merge branch 'unstable' of https://github.com/sigp/lighthouse into mod_merge_single_blob --- .../src/data_availability_checker/availability_view.rs | 3 +-- beacon_node/http_api/src/publish_blocks.rs | 4 ++-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/beacon_node/beacon_chain/src/data_availability_checker/availability_view.rs b/beacon_node/beacon_chain/src/data_availability_checker/availability_view.rs index 65093db26..12d2304c4 100644 --- a/beacon_node/beacon_chain/src/data_availability_checker/availability_view.rs +++ b/beacon_node/beacon_chain/src/data_availability_checker/availability_view.rs @@ -108,11 +108,10 @@ pub trait AvailabilityView { /// 1. The blob entry at the index is empty and no block exists, or /// 2. The block exists and its commitment matches the blob's commitment. fn merge_single_blob(&mut self, index: usize, blob: Self::BlobType) { - let commitment = *blob.get_commitment(); if let Some(cached_block) = self.get_cached_block() { let block_commitment_opt = cached_block.get_commitments().get(index).copied(); if let Some(block_commitment) = block_commitment_opt { - if block_commitment == commitment { + if block_commitment == *blob.get_commitment() { self.insert_blob_at_index(index, blob) } } diff --git a/beacon_node/http_api/src/publish_blocks.rs b/beacon_node/http_api/src/publish_blocks.rs index 4af2a82a4..2a9620142 100644 --- a/beacon_node/http_api/src/publish_blocks.rs +++ b/beacon_node/http_api/src/publish_blocks.rs @@ -82,11 +82,11 @@ pub async fn publish_block { - crate::publish_pubsub_message(&sender, PubsubMessage::BeaconBlock(block.clone())) + crate::publish_pubsub_message(&sender, PubsubMessage::BeaconBlock(block)) .map_err(|_| BlockError::BeaconChainError(BeaconChainError::UnableToPublish))?; } SignedBeaconBlock::Deneb(_) => { - let mut pubsub_messages = vec![PubsubMessage::BeaconBlock(block.clone())]; + let mut pubsub_messages = vec![PubsubMessage::BeaconBlock(block)]; if let Some(blob_sidecars) = blobs_opt { for (blob_index, blob) in blob_sidecars.into_iter().enumerate() { pubsub_messages.push(PubsubMessage::BlobSidecar(Box::new((