From 72e1467ba3a6ea2396c49902793e7de3845faf41 Mon Sep 17 00:00:00 2001 From: Alexey Shekhirin Date: Wed, 21 Jan 2026 21:21:53 +0000 Subject: [PATCH] fix(prune): avoid panic in tx lookup (#21275) --- .../prune/prune/src/segments/user/transaction_lookup.rs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/crates/prune/prune/src/segments/user/transaction_lookup.rs b/crates/prune/prune/src/segments/user/transaction_lookup.rs index 74e0e29647..bfdcd61a0c 100644 --- a/crates/prune/prune/src/segments/user/transaction_lookup.rs +++ b/crates/prune/prune/src/segments/user/transaction_lookup.rs @@ -84,7 +84,14 @@ where .into_inner(); let tx_range = start..= Some(end) - .min(input.limiter.deleted_entries_limit_left().map(|left| start + left as u64 - 1)) + .min( + input + .limiter + .deleted_entries_limit_left() + // Use saturating addition here to avoid panicking on + // `deleted_entries_limit == usize::MAX` + .map(|left| start.saturating_add(left as u64) - 1), + ) .unwrap(); let tx_range_end = *tx_range.end();