rippled
|
Manages the lifetime of ledger replay tasks. More...
Public Member Functions | |
LedgerReplayer (Application &app, InboundLedgers &inboundLedgers, std::unique_ptr< PeerSetBuilder > peerSetBuilder) | |
~LedgerReplayer () | |
void | replay (InboundLedger::Reason r, uint256 const &finishLedgerHash, std::uint32_t totalNumLedgers) |
Replay a range of ledgers. More... | |
void | createDeltas (std::shared_ptr< LedgerReplayTask > task) |
Create LedgerDeltaAcquire subtasks for the LedgerReplayTask task. More... | |
void | gotSkipList (LedgerInfo const &info, boost::intrusive_ptr< SHAMapItem const > const &data) |
Process a skip list (extracted from a TMProofPathResponse message) More... | |
void | gotReplayDelta (LedgerInfo const &info, std::map< std::uint32_t, std::shared_ptr< STTx const >> &&txns) |
Process a ledger delta (extracted from a TMReplayDeltaResponse message) More... | |
void | sweep () |
Remove completed tasks. More... | |
void | stop () |
Private Attributes | |
std::mutex | mtx_ |
std::vector< std::shared_ptr< LedgerReplayTask > > | tasks_ |
hash_map< uint256, std::weak_ptr< LedgerDeltaAcquire > > | deltas_ |
hash_map< uint256, std::weak_ptr< SkipListAcquire > > | skipLists_ |
Application & | app_ |
InboundLedgers & | inboundLedgers_ |
std::unique_ptr< PeerSetBuilder > | peerSetBuilder_ |
beast::Journal | j_ |
Friends | |
class | test::LedgerReplayClient |
Manages the lifetime of ledger replay tasks.
Definition at line 72 of file LedgerReplayer.h.
ripple::LedgerReplayer::LedgerReplayer | ( | Application & | app, |
InboundLedgers & | inboundLedgers, | ||
std::unique_ptr< PeerSetBuilder > | peerSetBuilder | ||
) |
Definition at line 27 of file LedgerReplayer.cpp.
ripple::LedgerReplayer::~LedgerReplayer | ( | ) |
Definition at line 38 of file LedgerReplayer.cpp.
void ripple::LedgerReplayer::replay | ( | InboundLedger::Reason | r, |
uint256 const & | finishLedgerHash, | ||
std::uint32_t | totalNumLedgers | ||
) |
Replay a range of ledgers.
r | reason for the replay request |
finishLedgerHash | hash of the last ledger |
totalNumLedgers | total number of ledgers in the range, inclusive |
Definition at line 45 of file LedgerReplayer.cpp.
void ripple::LedgerReplayer::createDeltas | ( | std::shared_ptr< LedgerReplayTask > | task | ) |
Create LedgerDeltaAcquire subtasks for the LedgerReplayTask task.
Definition at line 112 of file LedgerReplayer.cpp.
void ripple::LedgerReplayer::gotSkipList | ( | LedgerInfo const & | info, |
boost::intrusive_ptr< SHAMapItem const > const & | data | ||
) |
Process a skip list (extracted from a TMProofPathResponse message)
info | ledger info |
data | skip list holder |
Definition at line 173 of file LedgerReplayer.cpp.
void ripple::LedgerReplayer::gotReplayDelta | ( | LedgerInfo const & | info, |
std::map< std::uint32_t, std::shared_ptr< STTx const >> && | txns | ||
) |
Process a ledger delta (extracted from a TMReplayDeltaResponse message)
info | ledger info |
txns | set of Txns of the ledger |
Definition at line 196 of file LedgerReplayer.cpp.
void ripple::LedgerReplayer::sweep | ( | ) |
Remove completed tasks.
Definition at line 219 of file LedgerReplayer.cpp.
void ripple::LedgerReplayer::stop | ( | ) |
Definition at line 265 of file LedgerReplayer.cpp.
|
friend |
Definition at line 139 of file LedgerReplayer.h.
|
mutableprivate |
Definition at line 129 of file LedgerReplayer.h.
|
private |
Definition at line 130 of file LedgerReplayer.h.
|
private |
Definition at line 131 of file LedgerReplayer.h.
|
private |
Definition at line 132 of file LedgerReplayer.h.
|
private |
Definition at line 134 of file LedgerReplayer.h.
|
private |
Definition at line 135 of file LedgerReplayer.h.
|
private |
Definition at line 136 of file LedgerReplayer.h.
|
private |
Definition at line 137 of file LedgerReplayer.h.