Bitcoin ABC 0.30.3
P2P Digital Currency
|
DisconnectedBlockTransactions. More...
#include <disconnected_transactions.h>
DisconnectedBlockTransactions.
During the reorg, it's desirable to re-add previously confirmed transactions to the mempool, so that anything not re-confirmed in the new chain is available to be mined. However, it's more efficient to wait until the reorg is complete and process all still-unconfirmed transactions at that time, since we expect most confirmed transactions to (typically) still be confirmed in the new chain, and re-accepting to the memory pool is expensive (and therefore better to not do in the middle of reorg-processing). Instead, store the disconnected transactions (in order!) as we go, remove any that are included in blocks in the new chain, and then process the remaining still-unconfirmed transactions at the end.
It also enables efficient reprocessing of current mempool entries, useful when (de)activating forks that result in in-mempool transactions becoming invalid
Definition at line 42 of file disconnected_transactions.h.