From dbdaf068f0e9481db40e7aa77f9a150242770e57 Mon Sep 17 00:00:00 2001 From: Matthias Seitz Date: Thu, 22 Jan 2026 02:01:22 +0100 Subject: [PATCH] fix(engine): clear execution cache when block validation fails (#21282) --- crates/engine/tree/src/tree/payload_processor/prewarm.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/crates/engine/tree/src/tree/payload_processor/prewarm.rs b/crates/engine/tree/src/tree/payload_processor/prewarm.rs index 6021098627..e9b7e1e07b 100644 --- a/crates/engine/tree/src/tree/payload_processor/prewarm.rs +++ b/crates/engine/tree/src/tree/payload_processor/prewarm.rs @@ -297,6 +297,11 @@ where // Replace the shared cache with the new one; the previous cache (if any) is // dropped. *cached = Some(new_cache); + } else { + // Block was invalid; caches were already mutated by insert_state above, + // so we must clear to prevent using polluted state + *cached = None; + debug!(target: "engine::caching", "cleared execution cache on invalid block"); } });