Module storage

Source
Expand description

Mempool transaction storage.

The main struct Storage holds verified and rejected transactions. Storage is effectively the data structure of the mempool. Convenient methods to manage it are included.

Storage does not expose a service so it can only be used by other code directly. Only code inside the crate::components::mempool module has access to it.

Modules§

eviction_list 🔒
EvictionList represents the transaction eviction list with efficient operations.
verified_set 🔒
The set of verified transactions in the mempool.

Structs§

Storage
Hold mempool verified and rejected mempool transactions.

Enums§

ExactTipRejectionError
Transactions rejected based on transaction authorizing data (scripts, proofs, signatures), or lock times. These rejections are only valid for the current tip.
RejectionError
Storage error that combines all other specific error types.
SameEffectsChainRejectionError
Transactions rejected based only on their effects (spends, outputs, transaction header). These rejections are valid while the current chain continues to grow.
SameEffectsTipRejectionError
Transactions rejected based only on their effects (spends, outputs, transaction header). These rejections are only valid for the current tip.

Constants§

MAX_EVICTION_MEMORY_ENTRIES 🔒
The size limit for mempool transaction rejection lists per ZIP-401.