From e28429084c185b2e4bc4ace0e071c8c0b259e0c0 Mon Sep 17 00:00:00 2001 From: Kenil shah Date: Tue, 24 Mar 2026 00:01:07 +0530 Subject: [PATCH] perf: remove unnecessary clone in transaction execution loop --- crates/validator-core/src/executor.rs | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/crates/validator-core/src/executor.rs b/crates/validator-core/src/executor.rs index 34452866..cd2a50ac 100644 --- a/crates/validator-core/src/executor.rs +++ b/crates/validator-core/src/executor.rs @@ -374,16 +374,15 @@ fn execute_transactions( where E: BlockExecutor, E::Receipt: Encodable2718 + TxReceipt, - T: Clone, OpTransaction: TransactionResponse, for<'a> Recovered<&'a T>: ExecutableTx, { executor.apply_pre_execution_changes().map_err(ValidationError::BlockReplayFailed)?; for tx in transactions { - let tx_envelope = tx.inner.clone().into_inner(); - let recovered_tx = Recovered::new_unchecked(&tx_envelope, tx.from()); - executor.execute_transaction(recovered_tx).map_err(ValidationError::BlockReplayFailed)?; + executor + .execute_transaction(tx.inner.inner.as_recovered_ref()) + .map_err(ValidationError::BlockReplayFailed)?; } let execution_result =