From 7bfdb337293553e124249caa0c9ce1d149f0657d Mon Sep 17 00:00:00 2001 From: Pawan Dhananjay Date: Tue, 4 Feb 2025 17:14:41 -0800 Subject: [PATCH] Return error if getBlobs not supported (#6911) N/A Previously, we were returning an empty vec of Nones if get_blobs was not supported in the EL. This results in confusing logging where we try to process the empty list of blobs and log a bunch of Unexpected errors. See ``` Feb 03 17:32:12.383 DEBG Fetching blobs from the EL, num_expected_blobs: 6, block_root: 0x7326fe2dc1cb9036c9de7a07a662c86a339085597849016eadf061b70b7815ba, service: fetch_engine_blobs, service: beacon, module: beac on_chain::fetch_blobs:84 Feb 03 17:32:12.384 DEBG Processing engine blobs, num_fetched_blobs: 0, block_root: 0x7326fe2dc1cb9036c9de7a07a662c86a339085597849016eadf061b70b7815ba, service: fetch_engine_blobs, service: beacon, module: beacon_c hain::fetch_blobs:197 Feb 03 17:32:12.384 ERRO Error fetching or processing blobs from EL, block_root: 0x7326fe2dc1cb9036c9de7a07a662c86a339085597849016eadf061b70b7815ba, error: BlobProcessingError(AvailabilityCheck(Unexpected)), module : network::network_beacon_processor:1011 ``` The error we should be getting is that getBlobs is not supported, this PR adds a new error variant and returns that. --- beacon_node/execution_layer/src/lib.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/beacon_node/execution_layer/src/lib.rs b/beacon_node/execution_layer/src/lib.rs index 4e0fe1de16b..6e5e4fca01e 100644 --- a/beacon_node/execution_layer/src/lib.rs +++ b/beacon_node/execution_layer/src/lib.rs @@ -158,6 +158,7 @@ pub enum Error { }, ZeroLengthTransaction, PayloadBodiesByRangeNotSupported, + GetBlobsNotSupported, InvalidJWTSecret(String), InvalidForkForPayload, InvalidPayloadBody(String), @@ -1871,7 +1872,7 @@ impl ExecutionLayer { .map_err(Box::new) .map_err(Error::EngineError) } else { - Ok(vec![None; query.len()]) + Err(Error::GetBlobsNotSupported) } }