![]() |
Bitcoin Core
25.99.0
P2P Digital Currency
|
Public Member Functions | |
size_t | CountOrphans () const EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
CTransactionRef | RandomOrphan () EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
![]() | |
bool | AddTx (const CTransactionRef &tx, NodeId peer) EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
Add a new orphan transaction. More... | |
bool | HaveTx (const GenTxid >xid) const EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
Check if we already have an orphan transaction (by txid or wtxid) More... | |
CTransactionRef | GetTxToReconsider (NodeId peer) EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
Extract a transaction from a peer's work set Returns nullptr if there are no transactions to work on. More... | |
int | EraseTx (const uint256 &txid) EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
Erase an orphan by txid. More... | |
void | EraseForPeer (NodeId peer) EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
Erase all orphans announced by a peer (eg, after that peer disconnects) More... | |
void | EraseForBlock (const CBlock &block) EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
Erase all orphans included in or invalidated by a new block. More... | |
void | LimitOrphans (unsigned int max_orphans) EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
Limit the orphanage to the given maximum. More... | |
void | AddChildrenToWorkSet (const CTransaction &tx) EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
Add any orphans that list a particular tx as a parent into the from peer's work set. More... | |
bool | HaveTxToReconsider (NodeId peer) EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
Does this peer have any work to do? More... | |
size_t | Size () EXCLUSIVE_LOCKS_REQUIRED(!m_mutex) |
Return how many entries exist in the orphange. More... | |
Additional Inherited Members | |
![]() | |
using | OrphanMap = decltype(m_orphans) |
![]() | |
std::map< uint256, OrphanTx > m_orphans | GUARDED_BY (m_mutex) |
Map from txid to orphan transaction record. More... | |
std::map< NodeId, std::set< uint256 > > m_peer_work_set | GUARDED_BY (m_mutex) |
Which peer provided the orphans that need to be reconsidered. More... | |
std::map< COutPoint, std::set< OrphanMap::iterator, IteratorComparator > > m_outpoint_to_orphan_it | GUARDED_BY (m_mutex) |
Index from the parents' COutPoint into the m_orphans. More... | |
std::vector< OrphanMap::iterator > m_orphan_list | GUARDED_BY (m_mutex) |
Orphan transactions in vector for quick random eviction. More... | |
std::map< uint256, OrphanMap::iterator > m_wtxid_to_orphan_it | GUARDED_BY (m_mutex) |
Index from wtxid into the m_orphans to lookup orphan transactions using their witness ids. More... | |
int | _EraseTx (const uint256 &txid) EXCLUSIVE_LOCKS_REQUIRED(m_mutex) |
Erase an orphan by txid. More... | |
![]() | |
Mutex | m_mutex |
Guards orphan transactions. More... | |
Definition at line 21 of file orphanage_tests.cpp.
|
inline |
|
inline |
Definition at line 30 of file orphanage_tests.cpp.