rippled
|
Classes | |
struct | Stats |
Definition at line 70 of file LedgerMaster.h.
|
explicit |
Definition at line 183 of file LedgerMaster.cpp.
|
virtualdefault |
LedgerIndex ripple::LedgerMaster::getCurrentLedgerIndex | ( | ) |
Definition at line 207 of file LedgerMaster.cpp.
LedgerIndex ripple::LedgerMaster::getValidLedgerIndex | ( | ) |
Definition at line 213 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::isCompatible | ( | ReadView const & | view, |
beast::Journal::Stream | s, | ||
char const * | reason | ||
) |
Definition at line 219 of file LedgerMaster.cpp.
std::recursive_mutex & ripple::LedgerMaster::peekMutex | ( | ) |
Definition at line 1647 of file LedgerMaster.cpp.
std::shared_ptr< ReadView const > ripple::LedgerMaster::getCurrentLedger | ( | ) |
Definition at line 1654 of file LedgerMaster.cpp.
std::shared_ptr<Ledger const> ripple::LedgerMaster::getClosedLedger | ( | ) |
Definition at line 98 of file LedgerMaster.h.
std::shared_ptr< Ledger const > ripple::LedgerMaster::getValidatedLedger | ( | ) |
Definition at line 1664 of file LedgerMaster.cpp.
Rules ripple::LedgerMaster::getValidatedRules | ( | ) |
Definition at line 1679 of file LedgerMaster.cpp.
std::shared_ptr< ReadView const > ripple::LedgerMaster::getPublishedLedger | ( | ) |
Definition at line 1694 of file LedgerMaster.cpp.
std::chrono::seconds ripple::LedgerMaster::getPublishedLedgerAge | ( | ) |
Definition at line 250 of file LedgerMaster.cpp.
std::chrono::seconds ripple::LedgerMaster::getValidatedLedgerAge | ( | ) |
Definition at line 274 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::isCaughtUp | ( | std::string & | reason | ) |
Definition at line 305 of file LedgerMaster.cpp.
std::uint32_t ripple::LedgerMaster::getEarliestFetch | ( | ) |
Definition at line 697 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::storeLedger | ( | std::shared_ptr< Ledger const > | ledger | ) |
Definition at line 536 of file LedgerMaster.cpp.
void ripple::LedgerMaster::setFullLedger | ( | std::shared_ptr< Ledger const > const & | ledger, |
bool | isSynchronous, | ||
bool | isCurrent | ||
) |
Definition at line 911 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::canBeCurrent | ( | std::shared_ptr< Ledger const > const & | ledger | ) |
Check the sequence number and parent close time of a ledger against our clock and last validated ledger to see if it can be the network's current ledger.
Definition at line 436 of file LedgerMaster.cpp.
void ripple::LedgerMaster::switchLCL | ( | std::shared_ptr< Ledger const > const & | lastClosed | ) |
Definition at line 504 of file LedgerMaster.cpp.
void ripple::LedgerMaster::failedSave | ( | std::uint32_t | seq, |
uint256 const & | hash | ||
) |
Definition at line 972 of file LedgerMaster.cpp.
std::string ripple::LedgerMaster::getCompleteLedgers | ( | ) |
Definition at line 1701 of file LedgerMaster.cpp.
void ripple::LedgerMaster::applyHeldTransactions | ( | ) |
Apply held transactions to the open ledger This is normally called as we close the ledger.
The open ledger remains open to handle new transactions until a new open ledger is built.
Definition at line 549 of file LedgerMaster.cpp.
std::shared_ptr< STTx const > ripple::LedgerMaster::popAcctTransaction | ( | std::shared_ptr< STTx const > const & | tx | ) |
Get the next transaction held for a particular account if any.
This is normally called when a transaction for that account is successfully applied to the open ledger so the next transaction can be resubmitted without waiting for ledger close.
Definition at line 574 of file LedgerMaster.cpp.
uint256 ripple::LedgerMaster::getHashBySeq | ( | std::uint32_t | index | ) |
Get a ledger's hash by sequence number using the cache.
Definition at line 1743 of file LedgerMaster.cpp.
std::optional< LedgerHash > ripple::LedgerMaster::walkHashBySeq | ( | std::uint32_t | index, |
InboundLedger::Reason | reason | ||
) |
Walk to a ledger's hash using the skip list.
Definition at line 1754 of file LedgerMaster.cpp.
std::optional< LedgerHash > ripple::LedgerMaster::walkHashBySeq | ( | std::uint32_t | index, |
std::shared_ptr< ReadView const > const & | referenceLedger, | ||
InboundLedger::Reason | reason | ||
) |
Walk the chain of ledger hashes to determine the hash of the ledger with the specified index.
The referenceLedger is used as the base of the chain and should be fully validated and must not precede the target index. This function may throw if nodes from the reference ledger or any prior ledger are not present in the node store.
Definition at line 1765 of file LedgerMaster.cpp.
std::shared_ptr< Ledger const > ripple::LedgerMaster::getLedgerBySeq | ( | std::uint32_t | index | ) |
Definition at line 1818 of file LedgerMaster.cpp.
std::shared_ptr< Ledger const > ripple::LedgerMaster::getLedgerByHash | ( | uint256 const & | hash | ) |
Definition at line 1854 of file LedgerMaster.cpp.
void ripple::LedgerMaster::setLedgerRangePresent | ( | std::uint32_t | minV, |
std::uint32_t | maxV | ||
) |
Definition at line 1867 of file LedgerMaster.cpp.
std::optional< NetClock::time_point > ripple::LedgerMaster::getCloseTimeBySeq | ( | LedgerIndex | ledgerIndex | ) |
Definition at line 1713 of file LedgerMaster.cpp.
std::optional< NetClock::time_point > ripple::LedgerMaster::getCloseTimeByHash | ( | LedgerHash const & | ledgerHash, |
LedgerIndex | ledgerIndex | ||
) |
Definition at line 1721 of file LedgerMaster.cpp.
void ripple::LedgerMaster::addHeldTransaction | ( | std::shared_ptr< Transaction > const & | trans | ) |
Definition at line 425 of file LedgerMaster.cpp.
void ripple::LedgerMaster::fixMismatch | ( | ReadView const & | ledger | ) |
Definition at line 856 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::haveLedger | ( | std::uint32_t | seq | ) |
Definition at line 588 of file LedgerMaster.cpp.
void ripple::LedgerMaster::clearLedger | ( | std::uint32_t | seq | ) |
Definition at line 595 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::getValidatedRange | ( | std::uint32_t & | minVal, |
std::uint32_t & | maxVal | ||
) |
Definition at line 630 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::getFullValidatedRange | ( | std::uint32_t & | minVal, |
std::uint32_t & | maxVal | ||
) |
Definition at line 603 of file LedgerMaster.cpp.
void ripple::LedgerMaster::sweep | ( | ) |
Definition at line 1874 of file LedgerMaster.cpp.
float ripple::LedgerMaster::getCacheHitRate | ( | ) |
Definition at line 1881 of file LedgerMaster.cpp.
void ripple::LedgerMaster::checkAccept | ( | std::shared_ptr< Ledger const > const & | ledger | ) |
Definition at line 1042 of file LedgerMaster.cpp.
void ripple::LedgerMaster::checkAccept | ( | uint256 const & | hash, |
std::uint32_t | seq | ||
) |
Definition at line 981 of file LedgerMaster.cpp.
void ripple::LedgerMaster::consensusBuilt | ( | std::shared_ptr< Ledger const > const & | ledger, |
uint256 const & | consensusHash, | ||
Json::Value | consensus | ||
) |
Report that the consensus process built a particular ledger.
Definition at line 1190 of file LedgerMaster.cpp.
void ripple::LedgerMaster::setBuildingLedger | ( | LedgerIndex | index | ) |
Definition at line 582 of file LedgerMaster.cpp.
void ripple::LedgerMaster::tryAdvance | ( | ) |
Definition at line 1459 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::newPathRequest | ( | ) |
Definition at line 1595 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::isNewPathRequest | ( | ) |
Definition at line 1603 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::newOrderBookDB | ( | ) |
Definition at line 1614 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::fixIndex | ( | LedgerIndex | ledgerIndex, |
LedgerHash const & | ledgerHash | ||
) |
Definition at line 530 of file LedgerMaster.cpp.
void ripple::LedgerMaster::clearPriorLedgers | ( | LedgerIndex | seq | ) |
Definition at line 1887 of file LedgerMaster.cpp.
void ripple::LedgerMaster::clearLedgerCachePrior | ( | LedgerIndex | seq | ) |
Definition at line 1895 of file LedgerMaster.cpp.
void ripple::LedgerMaster::takeReplay | ( | std::unique_ptr< LedgerReplay > | replay | ) |
Definition at line 1901 of file LedgerMaster.cpp.
std::unique_ptr< LedgerReplay > ripple::LedgerMaster::releaseReplay | ( | ) |
Definition at line 1907 of file LedgerMaster.cpp.
void ripple::LedgerMaster::gotFetchPack | ( | bool | progress, |
std::uint32_t | seq | ||
) |
Definition at line 2159 of file LedgerMaster.cpp.
void ripple::LedgerMaster::addFetchPack | ( | uint256 const & | hash, |
std::shared_ptr< Blob > | data | ||
) |
Definition at line 2140 of file LedgerMaster.cpp.
|
overridevirtual |
Retrieves partial ledger data of the coresponding hash from peers.
`
nodeHash | The 256-bit hash of the data to fetch. |
std::nullopt
if the hash isn't cached, otherwise, the hash associated data. Implements ripple::AbstractFetchPackContainer.
Definition at line 2146 of file LedgerMaster.cpp.
void ripple::LedgerMaster::makeFetchPack | ( | std::weak_ptr< Peer > const & | wPeer, |
std::shared_ptr< protocol::TMGetObjectByHash > const & | request, | ||
uint256 | haveLedgerHash, | ||
UptimeClock::time_point | uptime | ||
) |
Definition at line 2229 of file LedgerMaster.cpp.
std::size_t ripple::LedgerMaster::getFetchPackCacheSize | ( | ) | const |
Definition at line 2360 of file LedgerMaster.cpp.
bool ripple::LedgerMaster::haveValidated | ( | ) |
Whether we have ever fully validated a ledger.
Definition at line 286 of file LedgerMaster.h.
std::optional< LedgerIndex > ripple::LedgerMaster::minSqlSeq | ( | ) |
Definition at line 2367 of file LedgerMaster.cpp.
|
private |
Definition at line 336 of file LedgerMaster.cpp.
|
private |
Definition at line 417 of file LedgerMaster.cpp.
|
private |
Definition at line 711 of file LedgerMaster.cpp.
|
private |
Request a fetch pack to get to the specified ledger.
Definition at line 783 of file LedgerMaster.cpp.
|
private |
Definition at line 1291 of file LedgerMaster.cpp.
|
private |
Determines how many validations are needed to fully validate a ledger.
Definition at line 1036 of file LedgerMaster.cpp.
|
private |
Definition at line 1913 of file LedgerMaster.cpp.
|
private |
Definition at line 2039 of file LedgerMaster.cpp.
|
private |
Definition at line 1314 of file LedgerMaster.cpp.
|
private |
Definition at line 1491 of file LedgerMaster.cpp.
|
private |
A thread needs to be dispatched to handle pathfinding work of some kind.
Definition at line 1625 of file LedgerMaster.cpp.
|
private |
Definition at line 435 of file LedgerMaster.h.
|
private |
Definition at line 334 of file LedgerMaster.h.
|
private |
Definition at line 335 of file LedgerMaster.h.
|
mutableprivate |
Definition at line 337 of file LedgerMaster.h.
|
private |
Definition at line 340 of file LedgerMaster.h.
|
private |
Definition at line 343 of file LedgerMaster.h.
|
private |
Definition at line 346 of file LedgerMaster.h.
|
private |
Definition at line 349 of file LedgerMaster.h.
|
private |
Definition at line 352 of file LedgerMaster.h.
|
private |
Definition at line 355 of file LedgerMaster.h.
|
private |
Definition at line 358 of file LedgerMaster.h.
|
private |
Definition at line 360 of file LedgerMaster.h.
|
private |
Definition at line 362 of file LedgerMaster.h.
|
private |
Definition at line 365 of file LedgerMaster.h.
|
private |
Definition at line 367 of file LedgerMaster.h.
|
private |
Definition at line 368 of file LedgerMaster.h.
|
private |
Definition at line 371 of file LedgerMaster.h.
|
private |
Definition at line 374 of file LedgerMaster.h.
|
private |
Definition at line 375 of file LedgerMaster.h.
|
private |
Definition at line 377 of file LedgerMaster.h.
|
private |
Definition at line 378 of file LedgerMaster.h.
|
private |
Definition at line 380 of file LedgerMaster.h.
|
private |
Definition at line 383 of file LedgerMaster.h.
|
private |
Definition at line 384 of file LedgerMaster.h.
|
private |
Definition at line 385 of file LedgerMaster.h.
|
private |
Definition at line 386 of file LedgerMaster.h.
|
private |
Definition at line 387 of file LedgerMaster.h.
|
private |
Definition at line 390 of file LedgerMaster.h.
|
private |
Definition at line 393 of file LedgerMaster.h.
|
private |
Definition at line 396 of file LedgerMaster.h.
|
private |
Definition at line 398 of file LedgerMaster.h.
|
private |
Definition at line 400 of file LedgerMaster.h.
|
private |
Definition at line 402 of file LedgerMaster.h.
|
private |
Definition at line 406 of file LedgerMaster.h.
|
private |
Definition at line 409 of file LedgerMaster.h.
|
private |
Definition at line 431 of file LedgerMaster.h.