|
xrpld
|
#include <LedgerMaster.h>


Classes | |
| struct | Stats |
Definition at line 49 of file LedgerMaster.h.
|
explicit |
Definition at line 122 of file LedgerMaster.cpp.
|
overridedefault |
| LedgerIndex xrpl::LedgerMaster::getCurrentLedgerIndex | ( | ) |
Definition at line 145 of file LedgerMaster.cpp.
| LedgerIndex xrpl::LedgerMaster::getValidLedgerIndex | ( | ) |
Definition at line 151 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isCompatible | ( | ReadView const & | view, |
| beast::Journal::Stream | s, | ||
| char const * | reason ) |
Definition at line 157 of file LedgerMaster.cpp.
| std::recursive_mutex & xrpl::LedgerMaster::peekMutex | ( | ) |
Definition at line 1538 of file LedgerMaster.cpp.
| std::shared_ptr< ReadView const > xrpl::LedgerMaster::getCurrentLedger | ( | ) |
Definition at line 1545 of file LedgerMaster.cpp.
| std::shared_ptr< Ledger const > xrpl::LedgerMaster::getClosedLedger | ( | ) |
Definition at line 77 of file LedgerMaster.h.
| std::shared_ptr< Ledger const > xrpl::LedgerMaster::getValidatedLedger | ( | ) |
Definition at line 1551 of file LedgerMaster.cpp.
| Rules xrpl::LedgerMaster::getValidatedRules | ( | ) |
Definition at line 1557 of file LedgerMaster.cpp.
| std::shared_ptr< ReadView const > xrpl::LedgerMaster::getPublishedLedger | ( | ) |
Definition at line 1572 of file LedgerMaster.cpp.
| std::chrono::seconds xrpl::LedgerMaster::getPublishedLedgerAge | ( | ) |
Definition at line 180 of file LedgerMaster.cpp.
| std::chrono::seconds xrpl::LedgerMaster::getValidatedLedgerAge | ( | ) |
Definition at line 204 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isCaughtUp | ( | std::string & | reason | ) |
Definition at line 229 of file LedgerMaster.cpp.
| std::uint32_t xrpl::LedgerMaster::getEarliestFetch | ( | ) |
Definition at line 628 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::storeLedger | ( | std::shared_ptr< Ledger const > | ledger | ) |
Definition at line 451 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::setFullLedger | ( | std::shared_ptr< Ledger const > const & | ledger, |
| bool | isSynchronous, | ||
| bool | isCurrent ) |
Definition at line 819 of file LedgerMaster.cpp.
| bool xrpl::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 354 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::switchLCL | ( | std::shared_ptr< Ledger const > const & | lastClosed | ) |
Definition at line 419 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::failedSave | ( | std::uint32_t | seq, |
| uint256 const & | hash ) |
Definition at line 880 of file LedgerMaster.cpp.
| std::string xrpl::LedgerMaster::getCompleteLedgers | ( | ) |
Definition at line 1579 of file LedgerMaster.cpp.
| void xrpl::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 465 of file LedgerMaster.cpp.
| std::shared_ptr< STTx const > xrpl::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 481 of file LedgerMaster.cpp.
| uint256 xrpl::LedgerMaster::getHashBySeq | ( | std::uint32_t | index | ) |
Get a ledger's hash by sequence number using the cache.
Definition at line 1612 of file LedgerMaster.cpp.
| std::optional< LedgerHash > xrpl::LedgerMaster::walkHashBySeq | ( | std::uint32_t | index, |
| InboundLedger::Reason | reason ) |
Walk to a ledger's hash using the skip list.
Definition at line 1623 of file LedgerMaster.cpp.
| std::optional< LedgerHash > xrpl::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 1634 of file LedgerMaster.cpp.
| std::shared_ptr< Ledger const > xrpl::LedgerMaster::getLedgerBySeq | ( | std::uint32_t | index | ) |
Definition at line 1689 of file LedgerMaster.cpp.
| std::shared_ptr< Ledger const > xrpl::LedgerMaster::getLedgerByHash | ( | uint256 const & | hash | ) |
Definition at line 1725 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::setLedgerRangePresent | ( | std::uint32_t | minV, |
| std::uint32_t | maxV ) |
Definition at line 1738 of file LedgerMaster.cpp.
| std::optional< NetClock::time_point > xrpl::LedgerMaster::getCloseTimeBySeq | ( | LedgerIndex | ledgerIndex | ) |
Definition at line 1586 of file LedgerMaster.cpp.
| std::optional< NetClock::time_point > xrpl::LedgerMaster::getCloseTimeByHash | ( | LedgerHash const & | ledgerHash, |
| LedgerIndex | ledgerIndex ) |
Definition at line 1593 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::addHeldTransaction | ( | std::shared_ptr< Transaction > const & | trans | ) |
Definition at line 344 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::fixMismatch | ( | ReadView const & | ledger | ) |
Definition at line 767 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::haveLedger | ( | std::uint32_t | seq | ) |
Definition at line 495 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::clearLedger | ( | std::uint32_t | seq | ) |
Definition at line 502 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isValidated | ( | ReadView const & | ledger | ) |
Definition at line 509 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::getValidatedRange | ( | std::uint32_t & | minVal, |
| std::uint32_t & | maxVal ) |
Definition at line 583 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::getFullValidatedRange | ( | std::uint32_t & | minVal, |
| std::uint32_t & | maxVal ) |
Definition at line 554 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::sweep | ( | ) |
Definition at line 1745 of file LedgerMaster.cpp.
| float xrpl::LedgerMaster::getCacheHitRate | ( | ) |
Definition at line 1752 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::checkAccept | ( | std::shared_ptr< Ledger const > const & | ledger | ) |
Definition at line 949 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::checkAccept | ( | uint256 const & | hash, |
| std::uint32_t | seq ) |
Definition at line 889 of file LedgerMaster.cpp.
| void xrpl::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 1090 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::setBuildingLedger | ( | LedgerIndex | index | ) |
Definition at line 489 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::tryAdvance | ( | ) |
Definition at line 1351 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::newPathRequest | ( | ) |
Definition at line 1491 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isNewPathRequest | ( | ) |
Definition at line 1499 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::newOrderBookDB | ( | ) |
Definition at line 1510 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::fixIndex | ( | LedgerIndex | ledgerIndex, |
| LedgerHash const & | ledgerHash ) |
Definition at line 445 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::clearPriorLedgers | ( | LedgerIndex | seq | ) |
Definition at line 1758 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::clearLedgerCachePrior | ( | LedgerIndex | seq | ) |
Definition at line 1766 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::takeReplay | ( | std::unique_ptr< LedgerReplay > | replay | ) |
Definition at line 1772 of file LedgerMaster.cpp.
| std::unique_ptr< LedgerReplay > xrpl::LedgerMaster::releaseReplay | ( | ) |
Definition at line 1778 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::gotFetchPack | ( | bool | progress, |
| std::uint32_t | seq ) |
Definition at line 1993 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::addFetchPack | ( | uint256 const & | hash, |
| std::shared_ptr< Blob > | data ) |
Definition at line 1974 of file LedgerMaster.cpp.
|
override |
Definition at line 1980 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::makeFetchPack | ( | std::weak_ptr< Peer > const & | wPeer, |
| std::shared_ptr< protocol::TMGetObjectByHash > const & | request, | ||
| uint256 | haveLedgerHash, | ||
| UptimeClock::time_point | uptime ) |
Definition at line 2062 of file LedgerMaster.cpp.
| std::size_t xrpl::LedgerMaster::getFetchPackCacheSize | ( | ) | const |
Definition at line 2183 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::haveValidated | ( | ) |
Whether we have ever fully validated a ledger.
Definition at line 269 of file LedgerMaster.h.
| std::optional< LedgerIndex > xrpl::LedgerMaster::minSqlSeq | ( | ) |
Definition at line 2190 of file LedgerMaster.cpp.
| std::optional< uint256 > xrpl::LedgerMaster::txnIdFromIndex | ( | uint32_t | ledgerSeq, |
| uint32_t | txnIndex ) |
Definition at line 2196 of file LedgerMaster.cpp.
|
private |
Definition at line 254 of file LedgerMaster.cpp.
|
private |
Definition at line 336 of file LedgerMaster.cpp.
|
private |
Definition at line 646 of file LedgerMaster.cpp.
|
private |
Request a fetch pack to get to the specified ledger.
Definition at line 718 of file LedgerMaster.cpp.
|
private |
Definition at line 1190 of file LedgerMaster.cpp.
|
private |
Determines how many validations are needed to fully validate a ledger.
Definition at line 943 of file LedgerMaster.cpp.
|
private |
Definition at line 1784 of file LedgerMaster.cpp.
|
private |
Definition at line 1885 of file LedgerMaster.cpp.
|
private |
Definition at line 1210 of file LedgerMaster.cpp.
|
private |
Definition at line 1385 of file LedgerMaster.cpp.
|
private |
A thread needs to be dispatched to handle pathfinding work of some kind.
Definition at line 1522 of file LedgerMaster.cpp.
|
private |
Definition at line 414 of file LedgerMaster.h.
|
private |
Definition at line 321 of file LedgerMaster.h.
|
private |
Definition at line 322 of file LedgerMaster.h.
|
mutableprivate |
Definition at line 324 of file LedgerMaster.h.
|
private |
Definition at line 327 of file LedgerMaster.h.
|
private |
Definition at line 330 of file LedgerMaster.h.
|
private |
Definition at line 333 of file LedgerMaster.h.
|
private |
Definition at line 336 of file LedgerMaster.h.
|
private |
Definition at line 339 of file LedgerMaster.h.
|
private |
Definition at line 342 of file LedgerMaster.h.
|
private |
Definition at line 344 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 351 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 359 of file LedgerMaster.h.
|
private |
Definition at line 361 of file LedgerMaster.h.
|
private |
Definition at line 362 of file LedgerMaster.h.
|
private |
Definition at line 364 of file LedgerMaster.h.
|
private |
Definition at line 366 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 369 of file LedgerMaster.h.
|
private |
Definition at line 370 of file LedgerMaster.h.
|
private |
Definition at line 373 of file LedgerMaster.h.
|
private |
Definition at line 376 of file LedgerMaster.h.
|
private |
Definition at line 379 of file LedgerMaster.h.
|
private |
Definition at line 381 of file LedgerMaster.h.
|
private |
Definition at line 383 of file LedgerMaster.h.
|
private |
Definition at line 385 of file LedgerMaster.h.
|
private |
Definition at line 389 of file LedgerMaster.h.
|
private |
Definition at line 392 of file LedgerMaster.h.
|
private |
Definition at line 410 of file LedgerMaster.h.