go-ethereum/cmd/devp2p/internal/ethtest
Roberto Bayardo 88c8459005
eth/fetcher: fix blob transaction propagation (#30125)
This PR fixes an issue with blob transaction propagation due to the blob
transation txpool rejecting transactions with gapped nonces. The
specific changes are:

- fetch transactions from a peer in the order they were announced to
minimize nonce-gaps (which cause blob txs to be rejected

- don't wait on fetching blob transactions after announcement is
received, since they are not broadcast

Testing:
- unit tests updated to reflect that fetch order should always match tx
announcement order
- unit test added to confirm blob transactions are scheduled immediately
for fetching
  - running the PR on an eth mainnet full node without incident so far

---------

Signed-off-by: Roberto Bayardo <bayardo@alum.mit.edu>
Co-authored-by: Gary Rong <garyrong0905@gmail.com>
2024-09-06 13:32:01 +03:00
..
testdata cmd/devp2p: update eth/snap protocol test suites for PoS (#28340) 2023-12-20 17:23:48 +01:00
chain.go all: remove dependency on golang.org/exp (#29314) 2024-03-25 07:50:18 +01:00
chain_test.go cmd/devp2p: update eth/snap protocol test suites for PoS (#28340) 2023-12-20 17:23:48 +01:00
conn.go p2p: use netip.Addr where possible (#29891) 2024-06-05 19:31:04 +02:00
engine.go cmd: use package filepath over path for file system operations (#29227) 2024-03-12 10:00:34 +01:00
mkchain.sh cmd/devp2p: update eth/snap protocol test suites for PoS (#28340) 2023-12-20 17:23:48 +01:00
protocol.go cmd/devp2p: update eth/snap protocol test suites for PoS (#28340) 2023-12-20 17:23:48 +01:00
snap.go core/rawdb, trie: improve db APIs for accessing trie nodes (#29362) 2024-04-30 16:25:35 +02:00
suite.go eth/fetcher: fix blob transaction propagation (#30125) 2024-09-06 13:32:01 +03:00
suite_test.go all: simplify tests using t.TempDir() (#30150) 2024-07-15 15:26:58 +02:00
transaction.go all: replace fmt.Errorf() with errors.New() if no param required (#29472) 2024-04-08 12:59:17 +02:00