go-ethereum/core/txpool
Daniel Liu b9eb244a67 core/txpool: guard legacypool reservation release ownership
Add an ownership guard before releasing reserved addresses from legacypool cleanup paths.

Address presence in pending/queue and reservation ownership are tracked separately. Cleanup logic can observe an address as queue-empty while the reservation tracker no longer considers that address owned by the current subpool. In that case, a follow-up Release call can attempt to unreserve a non-owned address.

Use an optional ownership capability when available, so legacypool only releases reservations it still owns without expanding the exported Reserver interface.

Also add a focused regression test that exercises the queue-empty-without-reservation scenario.
2026-03-27 15:49:02 +08:00
..
blobpool miner: add OpenTelemetry spans for block building path (#33773) 2026-03-16 19:24:41 +01:00
legacypool core/txpool: guard legacypool reservation release ownership 2026-03-27 15:49:02 +08:00
locals core/txpool: Initialize journal writer for tx tracker (#32921) 2025-10-21 15:41:38 +08:00
errors.go core/txpool: drop peers on invalid KZG proofs 2026-01-13 17:12:08 +01:00
reserver.go core/txpool: guard legacypool reservation release ownership 2026-03-27 15:49:02 +08:00
subpool.go miner: add OpenTelemetry spans for block building path (#33773) 2026-03-16 19:24:41 +01:00
txpool.go miner: add OpenTelemetry spans for block building path (#33773) 2026-03-16 19:24:41 +01:00
validation.go core: Implement eip-7954 increase Maximum Contract Size (#33832) 2026-03-12 10:23:49 +08:00
validation_test.go core/txpool: add eip2681 check for incoming transactions (#32726) 2025-09-25 13:15:12 +02:00