|
xrpld
|
#include <LedgerMaster.h>


Classes | |
| struct | Stats |
Definition at line 32 of file LedgerMaster.h.
|
explicit |
Definition at line 121 of file LedgerMaster.cpp.
|
overridedefault |
| LedgerIndex xrpl::LedgerMaster::getCurrentLedgerIndex | ( | ) |
Definition at line 144 of file LedgerMaster.cpp.
| LedgerIndex xrpl::LedgerMaster::getValidLedgerIndex | ( | ) |
Definition at line 150 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isCompatible | ( | ReadView const & | view, |
| beast::Journal::Stream | s, | ||
| char const * | reason ) |
Definition at line 156 of file LedgerMaster.cpp.
| std::recursive_mutex & xrpl::LedgerMaster::peekMutex | ( | ) |
Definition at line 1532 of file LedgerMaster.cpp.
| std::shared_ptr< ReadView const > xrpl::LedgerMaster::getCurrentLedger | ( | ) |
Definition at line 1539 of file LedgerMaster.cpp.
| std::shared_ptr< Ledger const > xrpl::LedgerMaster::getClosedLedger | ( | ) |
Definition at line 60 of file LedgerMaster.h.
| std::shared_ptr< Ledger const > xrpl::LedgerMaster::getValidatedLedger | ( | ) |
Definition at line 1545 of file LedgerMaster.cpp.
| Rules xrpl::LedgerMaster::getValidatedRules | ( | ) |
Definition at line 1551 of file LedgerMaster.cpp.
| std::shared_ptr< ReadView const > xrpl::LedgerMaster::getPublishedLedger | ( | ) |
Definition at line 1566 of file LedgerMaster.cpp.
| std::chrono::seconds xrpl::LedgerMaster::getPublishedLedgerAge | ( | ) |
Definition at line 179 of file LedgerMaster.cpp.
| std::chrono::seconds xrpl::LedgerMaster::getValidatedLedgerAge | ( | ) |
Definition at line 203 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isCaughtUp | ( | std::string & | reason | ) |
Definition at line 228 of file LedgerMaster.cpp.
| std::uint32_t xrpl::LedgerMaster::getEarliestFetch | ( | ) |
Definition at line 626 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::storeLedger | ( | std::shared_ptr< Ledger const > | ledger | ) |
Definition at line 450 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::setFullLedger | ( | std::shared_ptr< Ledger const > const & | ledger, |
| bool | isSynchronous, | ||
| bool | isCurrent ) |
Definition at line 816 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 353 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::switchLCL | ( | std::shared_ptr< Ledger const > const & | lastClosed | ) |
Definition at line 418 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::failedSave | ( | std::uint32_t | seq, |
| uint256 const & | hash ) |
Definition at line 877 of file LedgerMaster.cpp.
| std::string xrpl::LedgerMaster::getCompleteLedgers | ( | ) |
Definition at line 1573 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 463 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 479 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 1606 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 1617 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 1628 of file LedgerMaster.cpp.
| std::shared_ptr< Ledger const > xrpl::LedgerMaster::getLedgerBySeq | ( | std::uint32_t | index | ) |
Definition at line 1683 of file LedgerMaster.cpp.
| std::shared_ptr< Ledger const > xrpl::LedgerMaster::getLedgerByHash | ( | uint256 const & | hash | ) |
Definition at line 1719 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::setLedgerRangePresent | ( | std::uint32_t | minV, |
| std::uint32_t | maxV ) |
Definition at line 1732 of file LedgerMaster.cpp.
| std::optional< NetClock::time_point > xrpl::LedgerMaster::getCloseTimeBySeq | ( | LedgerIndex | ledgerIndex | ) |
Definition at line 1580 of file LedgerMaster.cpp.
| std::optional< NetClock::time_point > xrpl::LedgerMaster::getCloseTimeByHash | ( | LedgerHash const & | ledgerHash, |
| LedgerIndex | ledgerIndex ) |
Definition at line 1587 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::addHeldTransaction | ( | std::shared_ptr< Transaction > const & | trans | ) |
Definition at line 343 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::fixMismatch | ( | ReadView const & | ledger | ) |
Definition at line 764 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::haveLedger | ( | std::uint32_t | seq | ) |
Definition at line 493 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::clearLedger | ( | std::uint32_t | seq | ) |
Definition at line 500 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isValidated | ( | ReadView const & | ledger | ) |
Definition at line 507 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::getValidatedRange | ( | std::uint32_t & | minVal, |
| std::uint32_t & | maxVal ) |
Definition at line 581 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::getFullValidatedRange | ( | std::uint32_t & | minVal, |
| std::uint32_t & | maxVal ) |
Definition at line 552 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::sweep | ( | ) |
Definition at line 1739 of file LedgerMaster.cpp.
| float xrpl::LedgerMaster::getCacheHitRate | ( | ) |
Definition at line 1746 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::checkAccept | ( | std::shared_ptr< Ledger const > const & | ledger | ) |
Definition at line 946 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::checkAccept | ( | uint256 const & | hash, |
| std::uint32_t | seq ) |
Definition at line 886 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 1085 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::setBuildingLedger | ( | LedgerIndex | index | ) |
Definition at line 487 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::tryAdvance | ( | ) |
Definition at line 1346 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::newPathRequest | ( | ) |
Definition at line 1486 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isNewPathRequest | ( | ) |
Definition at line 1494 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::newOrderBookDB | ( | ) |
Definition at line 1505 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::fixIndex | ( | LedgerIndex | ledgerIndex, |
| LedgerHash const & | ledgerHash ) |
Definition at line 444 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::clearPriorLedgers | ( | LedgerIndex | seq | ) |
Definition at line 1752 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::clearLedgerCachePrior | ( | LedgerIndex | seq | ) |
Definition at line 1760 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::takeReplay | ( | std::unique_ptr< LedgerReplay > | replay | ) |
Definition at line 1766 of file LedgerMaster.cpp.
| std::unique_ptr< LedgerReplay > xrpl::LedgerMaster::releaseReplay | ( | ) |
Definition at line 1772 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::gotFetchPack | ( | bool | progress, |
| std::uint32_t | seq ) |
Definition at line 1987 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::addFetchPack | ( | uint256 const & | hash, |
| std::shared_ptr< Blob > | data ) |
Definition at line 1968 of file LedgerMaster.cpp.
|
override |
Definition at line 1974 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 2055 of file LedgerMaster.cpp.
| std::size_t xrpl::LedgerMaster::getFetchPackCacheSize | ( | ) | const |
Definition at line 2176 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::haveValidated | ( | ) |
Whether we have ever fully validated a ledger.
Definition at line 243 of file LedgerMaster.h.
| std::optional< LedgerIndex > xrpl::LedgerMaster::minSqlSeq | ( | ) |
Definition at line 2183 of file LedgerMaster.cpp.
| std::optional< uint256 > xrpl::LedgerMaster::txnIdFromIndex | ( | uint32_t | ledgerSeq, |
| uint32_t | txnIndex ) |
Definition at line 2189 of file LedgerMaster.cpp.
|
private |
Definition at line 253 of file LedgerMaster.cpp.
|
private |
Definition at line 335 of file LedgerMaster.cpp.
|
private |
Definition at line 644 of file LedgerMaster.cpp.
|
private |
Request a fetch pack to get to the specified ledger.
Definition at line 715 of file LedgerMaster.cpp.
|
private |
Definition at line 1185 of file LedgerMaster.cpp.
|
private |
Determines how many validations are needed to fully validate a ledger.
Definition at line 940 of file LedgerMaster.cpp.
|
private |
Definition at line 1778 of file LedgerMaster.cpp.
|
private |
Definition at line 1879 of file LedgerMaster.cpp.
|
private |
Definition at line 1205 of file LedgerMaster.cpp.
|
private |
Definition at line 1380 of file LedgerMaster.cpp.
|
private |
A thread needs to be dispatched to handle pathfinding work of some kind.
Definition at line 1516 of file LedgerMaster.cpp.
|
private |
Definition at line 388 of file LedgerMaster.h.
|
private |
Definition at line 295 of file LedgerMaster.h.
|
private |
Definition at line 296 of file LedgerMaster.h.
|
mutableprivate |
Definition at line 298 of file LedgerMaster.h.
|
private |
Definition at line 301 of file LedgerMaster.h.
|
private |
Definition at line 304 of file LedgerMaster.h.
|
private |
Definition at line 307 of file LedgerMaster.h.
|
private |
Definition at line 310 of file LedgerMaster.h.
|
private |
Definition at line 313 of file LedgerMaster.h.
|
private |
Definition at line 316 of file LedgerMaster.h.
|
private |
Definition at line 318 of file LedgerMaster.h.
|
private |
Definition at line 320 of file LedgerMaster.h.
|
private |
Definition at line 323 of file LedgerMaster.h.
|
private |
Definition at line 325 of file LedgerMaster.h.
|
private |
Definition at line 326 of file LedgerMaster.h.
|
private |
Definition at line 329 of file LedgerMaster.h.
|
private |
Definition at line 332 of file LedgerMaster.h.
|
private |
Definition at line 333 of file LedgerMaster.h.
|
private |
Definition at line 335 of file LedgerMaster.h.
|
private |
Definition at line 336 of file LedgerMaster.h.
|
private |
Definition at line 338 of file LedgerMaster.h.
|
private |
Definition at line 340 of file LedgerMaster.h.
|
private |
Definition at line 341 of file LedgerMaster.h.
|
private |
Definition at line 342 of file LedgerMaster.h.
|
private |
Definition at line 343 of file LedgerMaster.h.
|
private |
Definition at line 344 of file LedgerMaster.h.
|
private |
Definition at line 347 of file LedgerMaster.h.
|
private |
Definition at line 350 of file LedgerMaster.h.
|
private |
Definition at line 353 of file LedgerMaster.h.
|
private |
Definition at line 355 of file LedgerMaster.h.
|
private |
Definition at line 357 of file LedgerMaster.h.
|
private |
Definition at line 359 of file LedgerMaster.h.
|
private |
Definition at line 363 of file LedgerMaster.h.
|
private |
Definition at line 366 of file LedgerMaster.h.
|
private |
Definition at line 384 of file LedgerMaster.h.