Module transaction_pool

Source
Expand description

Re-exported from reth_transaction_pool.

Modules§

blobstore
Storage for blob data of EIP4844 transactions.
error
Transaction pool errors
identifier
Identifier types for transactions and senders.
maintain
Support for maintaining the state of the transaction pool
metrics
Transaction pool metrics.
noop
A transaction pool implementation that does nothing.
pool
Transaction Pool internals.
test_utils
Common test helpers for mocking a pool Internal helpers for testing.
validate
Transaction validation abstractions.

Structs§

AllPoolTransactions
A Helper type that bundles all transactions in the pool.
AllTransactionsEvents
A Stream that receives FullTransactionEvent for all transaction.
BestTransactionsAttributes
A Helper type that bundles the best transactions attributes together.
BlockInfo
Represents the current status of the pool.
CanonicalStateUpdate
Represents changes after a new canonical block or range of canonical blocks was added to the chain.
CoinbaseTipOrdering
Default ordering for the pool.
EthPooledTransaction
The default PoolTransaction for the Pool for Ethereum.
EthTransactionValidator
Validator for Ethereum transactions. It is a TransactionValidator implementation that validates ethereum transaction.
LocalTransactionConfig
Configuration options for the locally received transactions: TransactionOrigin::Local
NewBlobSidecar
This type represents a new blob sidecar that has been stored in the transaction pool’s blobstore; it includes the TransactionHash of the blob transaction along with the assoc. sidecar (blobs, commitments, proofs)
NewSubpoolTransactionStream
A Stream that yields full transactions the subpool
NewTransactionEvent
Represents a new transaction
NoopTransactionFilter
A no-op implementation of TransactionFilter which marks all transactions as valid.
Pool
A shareable, generic, customizable TransactionPool implementation.
PoolConfig
Configuration options for the Transaction pool.
PoolSize
Represents the current status of the pool.
PriceBumpConfig
Price bump config (in %) for the transaction pool underpriced check.
PropagatedTransactions
Represents transactions that were propagated over the network.
SubPoolLimit
Size limits for a sub-pool.
TransactionEvents
A Stream that receives TransactionEvent only for the transaction with the given hash.
TransactionValidationTaskExecutor
A TransactionValidator implementation that validates ethereum transaction. This validator is non-blocking, all validation work is done in a separate task.
ValidPoolTransaction
A valid transaction in the pool.

Enums§

BlobStoreError
Error variants that can occur when interacting with a blob store.
EthBlobTransactionSidecar
Represents the blob sidecar of the EthPooledTransaction.
FullTransactionEvent
An event that happened to a transaction and contains its full body where possible.
GetPooledTransactionLimit
The limit to enforce for TransactionPool::get_pooled_transaction_elements.
PoolUpdateKind
Represents the kind of update to the canonical state.
Priority
Priority of the transaction that can be missing.
PropagateKind
Represents how a transaction was propagated over the network.
SubPool
Identifier for the transaction Sub-pool
TransactionEvent
Various events that describe status changes of a transaction.
TransactionListenerKind
Determines what kind of new transactions should be emitted by a stream of transactions.
TransactionOrigin
Where the transaction originates from.
TransactionValidationOutcome
A Result type returned after checking a transaction’s validity.

Constants§

DEFAULT_PRICE_BUMP
Default price bump (in %) for the transaction pool underpriced check.
DEFAULT_TXPOOL_ADDITIONAL_VALIDATION_TASKS
The default additional validation tasks size.
MAX_NEW_PENDING_TXS_NOTIFICATIONS
Default maximum new transactions for broadcasting.
REPLACE_BLOB_PRICE_BUMP
Replace blob price bump (in %) for the transaction pool underpriced check.
TXPOOL_MAX_ACCOUNT_SLOTS_PER_SENDER
Guarantees max transactions for one sender, compatible with geth/erigon
TXPOOL_SUBPOOL_MAX_SIZE_MB_DEFAULT
The default maximum allowed size of the given subpool.
TXPOOL_SUBPOOL_MAX_TXS_DEFAULT
The default maximum allowed number of transactions in the given subpool.

Traits§

BestTransactions
An Iterator that only returns transactions that are ready to be executed.
BlobStore
A blob store that can be used to store blob data of EIP4844 transactions.
EthPoolTransaction
Super trait for transactions that can be converted to and from Eth transactions intended for the ethereum style pool.
PoolTransaction
Trait for transaction types used inside the pool.
TransactionFilter
A filter that allows to check if a transaction satisfies a set of conditions
TransactionOrdering
Transaction ordering trait to determine the order of transactions.
TransactionPool
General purpose abstraction of a transaction-pool.
TransactionPoolExt
Extension for TransactionPool trait that allows to set the current block info.
TransactionValidator
Provides support for validating transaction at any given state of the chain

Functions§

blob_tx_priority
Returns the priority for the transaction, based on the “delta” blob fee and priority fee.
fee_delta
The blob step function, attempting to compute the delta given the max_tx_fee, and current_fee.

Type Aliases§

BestTransactionsFor
Alias to restrict the BestTransactions items to the pool’s transaction type.
EthTransactionPool
Type alias for default ethereum transaction pool
PeerId
The PeerId type.
PoolConsensusTx
Helper type alias to access PoolTransaction::Consensus for a given TransactionPool.
PoolPooledTx
Helper type alias to access PoolTransaction::Pooled for a given TransactionPool.
PoolResult
Transaction pool result type.
PoolTx
Helper type alias to access PoolTransaction for a given TransactionPool.