TxPool

Memory pool management

In Erigon, txpool is a specific API namespace that keeps pending and queued transactions in the local memory pool. It is used to store transactions that are waiting to be processed by miners. Default is 4096 pending and 1024 queued transactions. However, the number of pending transactions can be much higher than this default value.

The transaction pool (txpool or mempool) is the dynamic in-memory area where pending transactions reside before they are included in a block and thus become static. Each node on the Ethereum mainnet has its own pool of transactions and, combined, they all form the global pool.

The thousands of pending transactions that enter the global pool by being broadcast on the network and before being included in a block are an always changing data set that’s holding millions of dollars at any given second. There are many ways to use txpool such as yield farming, liquidity providing, arbitrage, front running and doing a MEV .

Erigon has a separate executable that allow to run TxPool as a separate process.

Running with TX pool as a separate process

Before using a separate TxPool process the executable must be built:

cd erigon
make txpool

If Erigon is on a different device, add --pprof.addr 0.0.0.0 or TxPool will listen on localhost by default.

./build/bin/txpool --pprof.addr 0.0.0.0

Erigon must be launched with options to listen to external TxPool

./build/bin/erigon --pprof --pprof.addr 123.123.123.123

Command line options

To display available options for sentry digit:

./build/bin/txpool --help

Commands

Last updated

Was this helpful?