From 00f691a58cb008f1d5c429c9a5eb0daa50010bb7 Mon Sep 17 00:00:00 2001 From: Matthias Seitz Date: Sun, 26 Mar 2023 14:56:49 +0200 Subject: [PATCH] fix(rpc): engine_getPayloadBodiesByRangeV1 params are quantity (#1986) --- crates/rpc/rpc-api/src/engine.rs | 6 +++--- crates/rpc/rpc/src/engine.rs | 15 +++++++++------ 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/crates/rpc/rpc-api/src/engine.rs b/crates/rpc/rpc-api/src/engine.rs index bfe33742b8..3ee151224e 100644 --- a/crates/rpc/rpc-api/src/engine.rs +++ b/crates/rpc/rpc-api/src/engine.rs @@ -1,5 +1,5 @@ use jsonrpsee::{core::RpcResult as Result, proc_macros::rpc}; -use reth_primitives::{BlockHash, BlockNumber, H64}; +use reth_primitives::{BlockHash, H64, U64}; use reth_rpc_types::engine::{ ExecutionPayload, ExecutionPayloadBodies, ForkchoiceState, ForkchoiceUpdated, PayloadAttributes, PayloadStatus, TransitionConfiguration, @@ -56,8 +56,8 @@ pub trait EngineApi { #[method(name = "engine_getPayloadBodiesByRangeV1")] async fn get_payload_bodies_by_range_v1( &self, - start: BlockNumber, - count: u64, + start: U64, + count: U64, ) -> Result; /// See also diff --git a/crates/rpc/rpc/src/engine.rs b/crates/rpc/rpc/src/engine.rs index 7715ba535f..d2a555b101 100644 --- a/crates/rpc/rpc/src/engine.rs +++ b/crates/rpc/rpc/src/engine.rs @@ -1,5 +1,3 @@ -use std::sync::Arc; - use crate::result::rpc_err; use async_trait::async_trait; use jsonrpsee::{ @@ -7,7 +5,7 @@ use jsonrpsee::{ types::error::INVALID_PARAMS_CODE, }; use reth_interfaces::consensus::ForkchoiceState; -use reth_primitives::{BlockHash, BlockNumber, ChainSpec, Hardfork, H64}; +use reth_primitives::{BlockHash, ChainSpec, Hardfork, H64, U64}; use reth_rpc_api::EngineApiServer; use reth_rpc_engine_api::{ EngineApiError, EngineApiHandle, EngineApiMessage, EngineApiMessageVersion, EngineApiResult, @@ -17,6 +15,7 @@ use reth_rpc_types::engine::{ ExecutionPayload, ExecutionPayloadBodies, ForkchoiceUpdated, PayloadAttributes, PayloadStatus, TransitionConfiguration, CAPABILITIES, }; +use std::sync::Arc; use tokio::sync::oneshot::{self, Receiver}; fn to_rpc_error>(error: E) -> Error { @@ -199,11 +198,15 @@ impl EngineApiServer for EngineApi { /// See also async fn get_payload_bodies_by_range_v1( &self, - start: BlockNumber, - count: u64, + start: U64, + count: U64, ) -> Result { let (tx, rx) = oneshot::channel(); - self.delegate_request(EngineApiMessage::GetPayloadBodiesByRange(start, count, tx), rx).await + self.delegate_request( + EngineApiMessage::GetPayloadBodiesByRange(start.as_u64(), count.as_u64(), tx), + rx, + ) + .await } /// Handler for `engine_exchangeTransitionConfigurationV1`