go-ethereum/core/txpool
ozpool 64822da467 core/txpool/blobpool: preserve limbo entry on update store failure
The previous limbo.update implementation deleted the existing entry from
the store and indices before re-inserting it under the new block. If the
re-insertion (setAndIndex) failed, the blob sidecar was permanently
lost: limbo is the only source of truth for the sidecar once the blob
transaction has been offloaded out of the blobpool, and EIP-4844 blob
data is not stored in chain state.

Reorder the operations so the new entry is written first. Only after the
store Put succeeds is the old entry dropped from the store and the old
group mapping cleaned up. A failure to drop the old store id now only
leaks a billy slot - the blob itself is preserved under the new id, and
a follow-up reorg-rollback can still re-inject it.

Adds a round-trip test that updates the inclusion block of a limbo'd
blob and verifies it remains pullable under the new block.

Fixes #34944
2026-05-14 11:35:36 +05:30
..
blobpool core/txpool/blobpool: preserve limbo entry on update store failure 2026-05-14 11:35:36 +05:30
legacypool core/txpool: change lock in Pending method of legacy pool to read lock (#32924) 2026-05-07 10:44:26 +02:00
locals core/txpool: use cmp.Compare instead of subtraction (#34918) 2026-05-10 13:03:57 +02:00
errors.go core/txpool: drop peers on invalid KZG proofs 2026-01-13 17:12:08 +01:00
reserver.go core/txpool: allow tx and authority regardless of admission order (#31373) 2025-04-09 19:11:24 -06:00
subpool.go miner: add OpenTelemetry spans for block building path (#33773) 2026-03-16 19:24:41 +01:00
txpool.go cmd, core, trie, triedb: split CachingDB into merkle + binary dbs. (#34700) 2026-04-17 08:55:54 +08:00
validation.go core: implement eip-7981: Increase Access List Cost (#34755) 2026-05-06 12:03:11 +02:00
validation_test.go core/txpool: add eip2681 check for incoming transactions (#32726) 2025-09-25 13:15:12 +02:00