-
Couldn't load subscription status.
- Fork 21.5k
Open
Labels
Description
Hi, we attempted to send a large batch of transactions within a single network message. Our findings were as follows:
- Geth: Correctly processed up to 5120 transactions.
- Nethermind: Correctly processed up to 2048 transactions.
- Reth: Correctly processed up to 16 transactions.
- Erigon: Correctly processed all transactions without limitation.
- Besu: Correctly processed up to 200 transactions.
| Testcase | Geth | Nethermind | Reth | Erigon | Besu |
|---|---|---|---|---|---|
| Single message batch sending normal transactions (100 txs) | Success | Success | Failed, only 16 transactions entered the mempool and eventually on-chain | Success | Success |
| Single message batch sending normal transactions (1000 txs) | Success | Success | Failed, only 16 transactions entered the mempool and eventually on-chain | Success | First 200 transactions on-chain |
| Single message batch sending normal transactions (10000+ txs) | Eventually 5120 transactions on-chain | Eventually 2048 transactions on-chain | Failed, only 16 transactions entered the mempool and eventually on-chain | All transactions successfully on-chain after a considerable period | First 200 transactions on-chain |
Env
We use kurtosis's ethereum-package for testing, and the relevant configuration is as follows:
// The ethereum-package network-para.yaml
participants:
- el_type: geth V1.16.2
cl_type: lighthouse V7.0.1
- el_type: nethermind V1.33.0
cl_type: lighthouse V7.0.1
- el_type: reth V1.6.0
cl_type: lighthouse V7.0.1
- el_type: besu V25.8.0
cl_type: lighthouse V7.0.1
- el_type: erigon V3.0.15
cl_type: lighthouse V7.0.1
additional_services:
- dora