|
rippled
|
#include <LedgerMaster.h>


Classes | |
| struct | Stats |
Definition at line 32 of file LedgerMaster.h.
|
explicit |
Definition at line 80 of file LedgerMaster.cpp.
|
virtualdefault |
| LedgerIndex xrpl::LedgerMaster::getCurrentLedgerIndex | ( | ) |
Definition at line 104 of file LedgerMaster.cpp.
| LedgerIndex xrpl::LedgerMaster::getValidLedgerIndex | ( | ) |
Definition at line 110 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isCompatible | ( | ReadView const & | view, |
| beast::Journal::Stream | s, | ||
| char const * | reason | ||
| ) |
Definition at line 116 of file LedgerMaster.cpp.
| std::recursive_mutex & xrpl::LedgerMaster::peekMutex | ( | ) |
Definition at line 1534 of file LedgerMaster.cpp.
| std::shared_ptr< ReadView const > xrpl::LedgerMaster::getCurrentLedger | ( | ) |
Definition at line 1541 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 1547 of file LedgerMaster.cpp.
| Rules xrpl::LedgerMaster::getValidatedRules | ( | ) |
Definition at line 1553 of file LedgerMaster.cpp.
| std::shared_ptr< ReadView const > xrpl::LedgerMaster::getPublishedLedger | ( | ) |
Definition at line 1568 of file LedgerMaster.cpp.
| std::chrono::seconds xrpl::LedgerMaster::getPublishedLedgerAge | ( | ) |
Definition at line 147 of file LedgerMaster.cpp.
| std::chrono::seconds xrpl::LedgerMaster::getValidatedLedgerAge | ( | ) |
Definition at line 171 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isCaughtUp | ( | std::string & | reason | ) |
Definition at line 196 of file LedgerMaster.cpp.
| std::uint32_t xrpl::LedgerMaster::getEarliestFetch | ( | ) |
Definition at line 596 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::storeLedger | ( | std::shared_ptr< Ledger const > | ledger | ) |
Definition at line 423 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::setFullLedger | ( | std::shared_ptr< Ledger const > const & | ledger, |
| bool | isSynchronous, | ||
| bool | isCurrent | ||
| ) |
Definition at line 785 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 323 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::switchLCL | ( | std::shared_ptr< Ledger const > const & | lastClosed | ) |
Definition at line 391 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::failedSave | ( | std::uint32_t | seq, |
| uint256 const & | hash | ||
| ) |
Definition at line 848 of file LedgerMaster.cpp.
| std::string xrpl::LedgerMaster::getCompleteLedgers | ( | ) |
Definition at line 1575 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 436 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 452 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 1690 of file LedgerMaster.cpp.
| std::shared_ptr< Ledger const > xrpl::LedgerMaster::getLedgerByHash | ( | uint256 const & | hash | ) |
Definition at line 1726 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::setLedgerRangePresent | ( | std::uint32_t | minV, |
| std::uint32_t | maxV | ||
| ) |
Definition at line 1739 of file LedgerMaster.cpp.
| std::optional< NetClock::time_point > xrpl::LedgerMaster::getCloseTimeBySeq | ( | LedgerIndex | ledgerIndex | ) |
Definition at line 1582 of file LedgerMaster.cpp.
| std::optional< NetClock::time_point > xrpl::LedgerMaster::getCloseTimeByHash | ( | LedgerHash const & | ledgerHash, |
| LedgerIndex | ledgerIndex | ||
| ) |
Definition at line 1590 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::addHeldTransaction | ( | std::shared_ptr< Transaction > const & | trans | ) |
Definition at line 312 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::fixMismatch | ( | ReadView const & | ledger | ) |
Definition at line 730 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::haveLedger | ( | std::uint32_t | seq | ) |
Definition at line 466 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::clearLedger | ( | std::uint32_t | seq | ) |
Definition at line 473 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isValidated | ( | ReadView const & | ledger | ) |
Definition at line 480 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::getValidatedRange | ( | std::uint32_t & | minVal, |
| std::uint32_t & | maxVal | ||
| ) |
Definition at line 555 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::getFullValidatedRange | ( | std::uint32_t & | minVal, |
| std::uint32_t & | maxVal | ||
| ) |
Definition at line 528 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::sweep | ( | ) |
Definition at line 1746 of file LedgerMaster.cpp.
| float xrpl::LedgerMaster::getCacheHitRate | ( | ) |
Definition at line 1753 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::checkAccept | ( | std::shared_ptr< Ledger const > const & | ledger | ) |
Definition at line 918 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::checkAccept | ( | uint256 const & | hash, |
| std::uint32_t | seq | ||
| ) |
Definition at line 857 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 1066 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::setBuildingLedger | ( | LedgerIndex | index | ) |
Definition at line 460 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::tryAdvance | ( | ) |
Definition at line 1338 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::newPathRequest | ( | ) |
Definition at line 1482 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::isNewPathRequest | ( | ) |
Definition at line 1490 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::newOrderBookDB | ( | ) |
Definition at line 1501 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::fixIndex | ( | LedgerIndex | ledgerIndex, |
| LedgerHash const & | ledgerHash | ||
| ) |
Definition at line 417 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::clearPriorLedgers | ( | LedgerIndex | seq | ) |
Definition at line 1759 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::clearLedgerCachePrior | ( | LedgerIndex | seq | ) |
Definition at line 1767 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::takeReplay | ( | std::unique_ptr< LedgerReplay > | replay | ) |
Definition at line 1773 of file LedgerMaster.cpp.
| std::unique_ptr< LedgerReplay > xrpl::LedgerMaster::releaseReplay | ( | ) |
Definition at line 1779 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::gotFetchPack | ( | bool | progress, |
| std::uint32_t | seq | ||
| ) |
Definition at line 2010 of file LedgerMaster.cpp.
| void xrpl::LedgerMaster::addFetchPack | ( | uint256 const & | hash, |
| std::shared_ptr< Blob > | data | ||
| ) |
Definition at line 1991 of file LedgerMaster.cpp.
|
overridevirtual |
Retrieves partial ledger data of the corresponding 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 xrpl::AbstractFetchPackContainer.
Definition at line 1997 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 2080 of file LedgerMaster.cpp.
| std::size_t xrpl::LedgerMaster::getFetchPackCacheSize | ( | ) | const |
Definition at line 2212 of file LedgerMaster.cpp.
| bool xrpl::LedgerMaster::haveValidated | ( | ) |
Whether we have ever fully validated a ledger.
Definition at line 246 of file LedgerMaster.h.
| std::optional< LedgerIndex > xrpl::LedgerMaster::minSqlSeq | ( | ) |
Definition at line 2219 of file LedgerMaster.cpp.
| std::optional< uint256 > xrpl::LedgerMaster::txnIdFromIndex | ( | uint32_t | ledgerSeq, |
| uint32_t | txnIndex | ||
| ) |
Definition at line 2225 of file LedgerMaster.cpp.
|
private |
Definition at line 221 of file LedgerMaster.cpp.
|
private |
Definition at line 304 of file LedgerMaster.cpp.
|
private |
Definition at line 610 of file LedgerMaster.cpp.
|
private |
Request a fetch pack to get to the specified ledger.
Definition at line 682 of file LedgerMaster.cpp.
|
private |
Definition at line 1167 of file LedgerMaster.cpp.
|
private |
Determines how many validations are needed to fully validate a ledger.
Definition at line 912 of file LedgerMaster.cpp.
|
private |
Definition at line 1785 of file LedgerMaster.cpp.
|
private |
Definition at line 1900 of file LedgerMaster.cpp.
|
private |
Definition at line 1189 of file LedgerMaster.cpp.
|
private |
Definition at line 1372 of file LedgerMaster.cpp.
|
private |
A thread needs to be dispatched to handle pathfinding work of some kind.
Definition at line 1512 of file LedgerMaster.cpp.
|
private |
Definition at line 396 of file LedgerMaster.h.
|
private |
Definition at line 298 of file LedgerMaster.h.
|
private |
Definition at line 299 of file LedgerMaster.h.
|
mutableprivate |
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 319 of file LedgerMaster.h.
|
private |
Definition at line 321 of file LedgerMaster.h.
|
private |
Definition at line 323 of file LedgerMaster.h.
|
private |
Definition at line 326 of file LedgerMaster.h.
|
private |
Definition at line 328 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 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 339 of file LedgerMaster.h.
|
private |
Definition at line 341 of file LedgerMaster.h.
|
private |
Definition at line 344 of file LedgerMaster.h.
|
private |
Definition at line 345 of file LedgerMaster.h.
|
private |
Definition at line 346 of file LedgerMaster.h.
|
private |
Definition at line 347 of file LedgerMaster.h.
|
private |
Definition at line 348 of file LedgerMaster.h.
|
private |
Definition at line 351 of file LedgerMaster.h.
|
private |
Definition at line 354 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 361 of file LedgerMaster.h.
|
private |
Definition at line 363 of file LedgerMaster.h.
|
private |
Definition at line 367 of file LedgerMaster.h.
|
private |
Definition at line 370 of file LedgerMaster.h.
|
private |
Definition at line 392 of file LedgerMaster.h.