rippled
|
Typedefs | |
using | response_type = boost::beast::http::response< boost::beast::http::string_body > |
using | seed_pair = std::pair< std::uint64_t, std::uint64_t > |
template<class Engine , class Result = typename Engine::result_type> | |
using | is_engine = std::is_invocable_r< Result, Engine > |
template<class T > | |
using | test_hardened_unordered_set = std::unordered_set< T, hardened_hash<> > |
template<class T > | |
using | test_hardened_unordered_map = std::unordered_map< T, int, hardened_hash<> > |
template<class T > | |
using | test_hardened_unordered_multiset = std::unordered_multiset< T, hardened_hash<> > |
template<class T > | |
using | test_hardened_unordered_multimap = std::unordered_multimap< T, int, hardened_hash<> > |
Enumerations | |
enum | TableType { TableType::Ledgers, TableType::Transactions, TableType::AccountTransactions } |
Functions | |
constexpr static std::pair< bool, std::uint64_t > | sumOfFirstSquares (std::size_t xIn) |
template<class T > | |
std::vector< T > | getTrustLineItems (AccountID const &accountID, ReadView const &view, LineDirection direction=LineDirection::outgoing) |
static std::string | to_string (TableType type) |
to_string Returns the name of a table according to its TableType. More... | |
DatabasePairValid | makeLedgerDBs (Config const &config, DatabaseCon::Setup const &setup, DatabaseCon::CheckpointerSetup const &checkpointerSetup) |
makeLedgerDBs Opens ledger and transactions databases. More... | |
std::optional< LedgerIndex > | getMinLedgerSeq (soci::session &session, TableType type) |
getMinLedgerSeq Returns minimum ledger sequence in given table. More... | |
std::optional< LedgerIndex > | getMaxLedgerSeq (soci::session &session, TableType type) |
getMaxLedgerSeq Returns maximum ledger sequence in given table. More... | |
void | deleteByLedgerSeq (soci::session &session, TableType type, LedgerIndex ledgerSeq) |
deleteByLedgerSeq Deletes all entries in given table for the ledger with given sequence. More... | |
void | deleteBeforeLedgerSeq (soci::session &session, TableType type, LedgerIndex ledgerSeq) |
deleteBeforeLedgerSeq Deletes all entries in given table for the ledgers with given sequence and all sequences below it. More... | |
std::size_t | getRows (soci::session &session, TableType type) |
getRows Returns number of rows in given table. More... | |
RelationalDatabase::CountMinMax | getRowsMinMax (soci::session &session, TableType type) |
getRowsMinMax Returns minimum ledger sequence, maximum ledger sequence and total number of rows in given table. More... | |
bool | saveValidatedLedger (DatabaseCon &ldgDB, DatabaseCon &txnDB, Application &app, std::shared_ptr< Ledger const > const &ledger, bool current) |
saveValidatedLedger Saves ledger into database. More... | |
static std::optional< LedgerInfo > | getLedgerInfo (soci::session &session, std::string const &sqlSuffix, beast::Journal j) |
getLedgerInfo Returns the info of the ledger retrieved from the database by using the provided SQL query suffix. More... | |
std::optional< LedgerInfo > | getLedgerInfoByIndex (soci::session &session, LedgerIndex ledgerSeq, beast::Journal j) |
getLedgerInfoByIndex Returns ledger by its sequence. More... | |
std::optional< LedgerInfo > | getNewestLedgerInfo (soci::session &session, beast::Journal j) |
getNewestLedgerInfo Returns info of newest saved ledger. More... | |
std::optional< LedgerInfo > | getLimitedOldestLedgerInfo (soci::session &session, LedgerIndex ledgerFirstIndex, beast::Journal j) |
getLimitedOldestLedgerInfo Returns info of oldest ledger from ledgers with sequences greather or equal to given. More... | |
std::optional< LedgerInfo > | getLimitedNewestLedgerInfo (soci::session &session, LedgerIndex ledgerFirstIndex, beast::Journal j) |
getLimitedNewestLedgerInfo Returns info of newest ledger from ledgers with sequences greather or equal to given. More... | |
std::optional< LedgerInfo > | getLedgerInfoByHash (soci::session &session, uint256 const &ledgerHash, beast::Journal j) |
getLedgerInfoByHash Returns info of ledger with given hash. More... | |
uint256 | getHashByIndex (soci::session &session, LedgerIndex ledgerIndex) |
getHashByIndex Returns hash of ledger with given sequence. More... | |
std::optional< LedgerHashPair > | getHashesByIndex (soci::session &session, LedgerIndex ledgerIndex, beast::Journal j) |
getHashesByIndex Returns hash of the ledger and hash of parent ledger for the ledger of given sequence. More... | |
std::map< LedgerIndex, LedgerHashPair > | getHashesByIndex (soci::session &session, LedgerIndex minSeq, LedgerIndex maxSeq, beast::Journal j) |
getHashesByIndex Returns hash of the ledger and hash of parent ledger for all ledgers with seqyences from given minimum limit to fiven maximum limit. More... | |
std::pair< std::vector< std::shared_ptr< Transaction > >, int > | getTxHistory (soci::session &session, Application &app, LedgerIndex startIndex, int quantity, bool count) |
getTxHistory Returns given number of most recent transactions starting from given number of entry. More... | |
static std::string | transactionsSQL (Application &app, std::string selection, RelationalDatabase::AccountTxOptions const &options, std::optional< int > const &limit_used, bool descending, bool binary, bool count, beast::Journal j) |
transactionsSQL Returns a SQL query for selecting the oldest or newest transactions in decoded or binary form for the account that matches the given criteria starting from the provided offset. More... | |
static std::pair< RelationalDatabase::AccountTxs, int > | getAccountTxs (soci::session &session, Application &app, LedgerMaster &ledgerMaster, RelationalDatabase::AccountTxOptions const &options, std::optional< int > const &limit_used, bool descending, beast::Journal j) |
getAccountTxs Returns the oldest or newest transactions for the account that matches the given criteria starting from the provided offset. More... | |
std::pair< RelationalDatabase::AccountTxs, int > | getOldestAccountTxs (soci::session &session, Application &app, LedgerMaster &ledgerMaster, RelationalDatabase::AccountTxOptions const &options, std::optional< int > const &limit_used, beast::Journal j) |
getOldestAccountTxs Returns oldest transactions for given account which match given criteria starting from given offset. More... | |
std::pair< RelationalDatabase::AccountTxs, int > | getNewestAccountTxs (soci::session &session, Application &app, LedgerMaster &ledgerMaster, RelationalDatabase::AccountTxOptions const &options, std::optional< int > const &limit_used, beast::Journal j) |
getNewestAccountTxs Returns newest transactions for given account which match given criteria starting from given offset. More... | |
static std::pair< std::vector< RelationalDatabase::txnMetaLedgerType >, int > | getAccountTxsB (soci::session &session, Application &app, RelationalDatabase::AccountTxOptions const &options, std::optional< int > const &limit_used, bool descending, beast::Journal j) |
getAccountTxsB Returns the oldest or newest transactions in binary form for the account that matches given criteria starting from the provided offset. More... | |
std::pair< std::vector< RelationalDatabase::txnMetaLedgerType >, int > | getOldestAccountTxsB (soci::session &session, Application &app, RelationalDatabase::AccountTxOptions const &options, std::optional< int > const &limit_used, beast::Journal j) |
getOldestAccountTxsB Returns oldest transactions in binary form for given account which match given criteria starting from given offset. More... | |
std::pair< std::vector< RelationalDatabase::txnMetaLedgerType >, int > | getNewestAccountTxsB (soci::session &session, Application &app, RelationalDatabase::AccountTxOptions const &options, std::optional< int > const &limit_used, beast::Journal j) |
getNewestAccountTxsB Returns newest transactions in binary form for given account which match given criteria starting from given offset. More... | |
static std::pair< std::optional< RelationalDatabase::AccountTxMarker >, int > | accountTxPage (soci::session &session, std::function< void(std::uint32_t)> const &onUnsavedLedger, std::function< void(std::uint32_t, std::string const &, Blob &&, Blob &&)> const &onTransaction, RelationalDatabase::AccountTxPageOptions const &options, int limit_used, std::uint32_t page_length, bool forward) |
accountTxPage Searches for the oldest or newest transactions for the account that matches the given criteria starting from the provided marker and invokes the callback parameter for each found transaction. More... | |
std::pair< std::optional< RelationalDatabase::AccountTxMarker >, int > | oldestAccountTxPage (soci::session &session, std::function< void(std::uint32_t)> const &onUnsavedLedger, std::function< void(std::uint32_t, std::string const &, Blob &&, Blob &&)> const &onTransaction, RelationalDatabase::AccountTxPageOptions const &options, int limit_used, std::uint32_t page_length) |
oldestAccountTxPage Searches oldest transactions for given account which match given criteria starting from given marker and calls callback for each found transaction. More... | |
std::pair< std::optional< RelationalDatabase::AccountTxMarker >, int > | newestAccountTxPage (soci::session &session, std::function< void(std::uint32_t)> const &onUnsavedLedger, std::function< void(std::uint32_t, std::string const &, Blob &&, Blob &&)> const &onTransaction, RelationalDatabase::AccountTxPageOptions const &options, int limit_used, std::uint32_t page_length) |
newestAccountTxPage Searches newest transactions for given account which match given criteria starting from given marker and calls callback for each found transaction. More... | |
std::variant< RelationalDatabase::AccountTx, TxSearched > | getTransaction (soci::session &session, Application &app, uint256 const &id, std::optional< ClosedInterval< uint32_t >> const &range, error_code_i &ec) |
getTransaction Returns transaction with given hash. More... | |
bool | dbHasSpace (soci::session &session, Config const &config, beast::Journal j) |
dbHasSpace Checks if given database has available space. More... | |
DatabasePair | makeMetaDBs (Config const &config, DatabaseCon::Setup const &setup, DatabaseCon::CheckpointerSetup const &checkpointerSetup) |
makeMetaDBs Opens ledger and transaction 'meta' databases which map ledger hashes and transaction IDs to the index of the shard that holds the ledger or transaction. More... | |
bool | saveLedgerMeta (std::shared_ptr< Ledger const > const &ledger, Application &app, soci::session &lgrMetaSession, soci::session &txnMetaSession, std::uint32_t shardIndex) |
saveLedgerMeta Stores (transaction ID -> shard index) and (ledger hash -> shard index) mappings in the meta databases. More... | |
std::optional< std::uint32_t > | getShardIndexforLedger (soci::session &session, LedgerHash const &hash) |
getShardIndexforLedger Queries the ledger meta database to retrieve the index of the shard that contains this ledger. More... | |
std::optional< std::uint32_t > | getShardIndexforTransaction (soci::session &session, TxID const &id) |
getShardIndexforTransaction Queries the transaction meta database to retrieve the index of the shard that contains this transaction. More... | |
std::string | toString (LedgerInfo const &info) |
Convenience function for printing out basic ledger info. More... | |
template<bool = true> | |
seed_pair | make_seed_pair () noexcept |
void | accessViolation () noexcept |
template<class = void> | |
boost::thread_specific_ptr< detail::LocalValues > & | getLocalValues () |
void | spin_pause () noexcept |
Inform the processor that we are in a tight spin-wait loop. More... | |
std::string | getSociSqliteInit (std::string const &name, std::string const &dir, std::string const &ext) |
std::string | getSociInit (BasicConfig const &config, std::string const &dbName) |
template<class V , class N , class = std::enable_if_t< std::is_same_v<std::remove_cv_t<N>, SLE> && std::is_base_of_v<ReadView, V>>> | |
bool | internalDirNext (V &view, uint256 const &root, std::shared_ptr< N > &page, unsigned int &index, uint256 &entry) |
template<class V , class N , class = std::enable_if_t< std::is_same_v<std::remove_cv_t<N>, SLE> && std::is_base_of_v<ReadView, V>>> | |
bool | internalDirFirst (V &view, uint256 const &root, std::shared_ptr< N > &page, unsigned int &index, uint256 &entry) |
template<typename BufferSequence > | |
auto | buffersBegin (BufferSequence const &bufs) |
template<typename BufferSequence > | |
auto | buffersEnd (BufferSequence const &bufs) |
template<class BufferSequence > | |
std::optional< MessageHeader > | parseMessageHeader (boost::system::error_code &ec, BufferSequence const &bufs, std::size_t size) |
Parse a message header. More... | |
template<class T , class Buffers , class = std::enable_if_t< std::is_base_of<::google::protobuf::Message, T>::value>> | |
std::shared_ptr< T > | parseMessageContent (MessageHeader const &header, Buffers const &buffers) |
template<class T , class Buffers , class Handler , class = std::enable_if_t< std::is_base_of<::google::protobuf::Message, T>::value>> | |
bool | invoke (MessageHeader const &header, Buffers const &buffers, Handler &handler) |
std::map< std::string, VoteBehavior > const & | supportedAmendments () |
Amendments that this server supports and the default voting behavior. More... | |
std::size_t | numDownVotedAmendments () |
Amendments that this server won't vote for by default. More... | |
std::size_t | numUpVotedAmendments () |
Amendments that this server will vote for by default. More... | |
constexpr std::uint32_t | make_hash_prefix (char a, char b, char c) |
STAmount | as_amount (Rate const &rate) |
void | copy_uint32 (std::uint8_t *out, std::uint32_t v) |
uint256 | deriveDeterministicRootKey (Seed const &seed) |
template<class T , class... Args> | |
STVar | make_stvar (Args &&... args) |
bool | operator== (STVar const &lhs, STVar const &rhs) |
bool | operator!= (STVar const &lhs, STVar const &rhs) |
static std::unordered_map< TERUnderlyingType, std::pair< char const *const, char const *const > > const & | transResults () |
static std::string | encodeBase58 (void const *message, std::size_t size, void *temp, std::size_t temp_size) |
static std::string | decodeBase58 (std::string const &s) |
SlabAllocatorSet< SHAMapItem > | slabber ({ { 128, megabytes(std::size_t(60)) }, { 192, megabytes(std::size_t(46)) }, { 272, megabytes(std::size_t(60)) }, { 384, megabytes(std::size_t(56)) }, { 564, megabytes(std::size_t(40)) }, { 772, megabytes(std::size_t(46)) }, { 1052, megabytes(std::size_t(60)) }, }) |
std::string | configContents (std::string const &dbPath, std::string const &validatorsFile) |
std::string | valFileContents () |
Variables | |
constexpr int | TableTypeCount = 3 |
static constexpr std::size_t | numFeatures = 58 |
defaultObject_t | defaultObject |
nonPresentObject_t | nonPresentObject |
constexpr std::string_view | isoCharSet |
constexpr std::size_t | isoCodeOffset = 12 |
constexpr std::size_t | isoCodeLength = 3 |
using ripple::detail::response_type = typedef boost::beast::http::response<boost::beast::http::string_body> |
using ripple::detail::seed_pair = typedef std::pair<std::uint64_t, std::uint64_t> |
Definition at line 39 of file hardened_hash.h.
using ripple::detail::is_engine = typedef std::is_invocable_r<Result, Engine> |
Definition at line 51 of file ripple/basics/random.h.
using ripple::detail::test_hardened_unordered_set = typedef std::unordered_set<T, hardened_hash<> > |
Definition at line 83 of file hardened_hash_test.cpp.
using ripple::detail::test_hardened_unordered_map = typedef std::unordered_map<T, int, hardened_hash<> > |
Definition at line 86 of file hardened_hash_test.cpp.
using ripple::detail::test_hardened_unordered_multiset = typedef std::unordered_multiset<T, hardened_hash<> > |
Definition at line 90 of file hardened_hash_test.cpp.
using ripple::detail::test_hardened_unordered_multimap = typedef std::unordered_multimap<T, int, hardened_hash<> > |
Definition at line 94 of file hardened_hash_test.cpp.
|
strong |
|
staticconstexpr |
std::vector<T> ripple::detail::getTrustLineItems | ( | AccountID const & | accountID, |
ReadView const & | view, | ||
LineDirection | direction = LineDirection::outgoing |
||
) |
Definition at line 64 of file TrustLine.cpp.
|
static |
DatabasePairValid ripple::detail::makeLedgerDBs | ( | Config const & | config, |
DatabaseCon::Setup const & | setup, | ||
DatabaseCon::CheckpointerSetup const & | checkpointerSetup | ||
) |
makeLedgerDBs Opens ledger and transactions databases.
config | Config object. |
setup | Path to database and opening parameters. |
checkpointerSetup | Database checkpointer setup. |
std::optional< LedgerIndex > ripple::detail::getMinLedgerSeq | ( | soci::session & | session, |
TableType | type | ||
) |
std::optional< LedgerIndex > ripple::detail::getMaxLedgerSeq | ( | soci::session & | session, |
TableType | type | ||
) |
void ripple::detail::deleteByLedgerSeq | ( | soci::session & | session, |
TableType | type, | ||
LedgerIndex | ledgerSeq | ||
) |
void ripple::detail::deleteBeforeLedgerSeq | ( | soci::session & | session, |
TableType | type, | ||
LedgerIndex | ledgerSeq | ||
) |
std::size_t ripple::detail::getRows | ( | soci::session & | session, |
TableType | type | ||
) |
RelationalDatabase::CountMinMax ripple::detail::getRowsMinMax | ( | soci::session & | session, |
TableType | type | ||
) |
getRowsMinMax Returns minimum ledger sequence, maximum ledger sequence and total number of rows in given table.
session | Session with database. |
type | Table ID for which the result is returned. |
bool ripple::detail::saveValidatedLedger | ( | DatabaseCon & | ldgDB, |
DatabaseCon & | txnDB, | ||
Application & | app, | ||
std::shared_ptr< Ledger const > const & | ledger, | ||
bool | current | ||
) |
saveValidatedLedger Saves ledger into database.
lgrDB | Link to ledgers database. |
txnDB | Link to transactions database. |
app | Application object. |
ledger | The ledger. |
current | True if ledger is current. |
|
static |
std::optional< LedgerInfo > ripple::detail::getLedgerInfoByIndex | ( | soci::session & | session, |
LedgerIndex | ledgerSeq, | ||
beast::Journal | j | ||
) |
std::optional< LedgerInfo > ripple::detail::getNewestLedgerInfo | ( | soci::session & | session, |
beast::Journal | j | ||
) |
std::optional< LedgerInfo > ripple::detail::getLimitedOldestLedgerInfo | ( | soci::session & | session, |
LedgerIndex | ledgerFirstIndex, | ||
beast::Journal | j | ||
) |
std::optional< LedgerInfo > ripple::detail::getLimitedNewestLedgerInfo | ( | soci::session & | session, |
LedgerIndex | ledgerFirstIndex, | ||
beast::Journal | j | ||
) |
std::optional< LedgerInfo > ripple::detail::getLedgerInfoByHash | ( | soci::session & | session, |
uint256 const & | ledgerHash, | ||
beast::Journal | j | ||
) |
uint256 ripple::detail::getHashByIndex | ( | soci::session & | session, |
LedgerIndex | ledgerIndex | ||
) |
std::optional< LedgerHashPair > ripple::detail::getHashesByIndex | ( | soci::session & | session, |
LedgerIndex | ledgerIndex, | ||
beast::Journal | j | ||
) |
getHashesByIndex Returns hash of the ledger and hash of parent ledger for the ledger of given sequence.
std::map< LedgerIndex, LedgerHashPair > ripple::detail::getHashesByIndex | ( | soci::session & | session, |
LedgerIndex | minSeq, | ||
LedgerIndex | maxSeq, | ||
beast::Journal | j | ||
) |
getHashesByIndex Returns hash of the ledger and hash of parent ledger for all ledgers with seqyences from given minimum limit to fiven maximum limit.
session | Session with database. |
minSeq | Minimum ledger sequence. |
maxSeq | Maximum ledger sequence. |
j | Journal. |
std::pair< std::vector< std::shared_ptr< Transaction > >, int > ripple::detail::getTxHistory | ( | soci::session & | session, |
Application & | app, | ||
LedgerIndex | startIndex, | ||
int | quantity, | ||
bool | count | ||
) |
getTxHistory Returns given number of most recent transactions starting from given number of entry.
session | Session with database. |
app | Application object. |
startIndex | Offset of first returned entry. |
quantity | Number of returned entries. |
count | True if counting of all transaction in that shard required. |
|
static |
transactionsSQL Returns a SQL query for selecting the oldest or newest transactions in decoded or binary form for the account that matches the given criteria starting from the provided offset.
app | Application object. |
selection | List of table fields to select from the database. |
options | Struct AccountTxOptions which contains the criteria to match: the account, the ledger search range, the offset of the first entry to return, the number of transactions to return, and a flag if this number is unlimited. |
limit_used | Number of transactions already returned in calls to other shard databases, if shard databases are used. No value if the node database is used. |
descending | True for descending order, false for ascending. |
binary | True for binary form, false for decoded. |
count | True for counting the number of transactions, false for selecting them. |
j | Journal. |
|
static |
getAccountTxs Returns the oldest or newest transactions for the account that matches the given criteria starting from the provided offset.
session | Session with the database. |
app | Application object. |
ledgerMaster | LedgerMaster object. |
options | Struct AccountTxOptions which contains the criteria to match: the account, the ledger search range, the offset of the first entry to return, the number of transactions to return, and a flag if this number is unlimited. |
limit_used | Number of transactions already returned in calls to other shard databases, if shard databases are used. No value if the node database is used. |
descending | True for descending order, false for ascending. |
j | Journal. |
std::pair< RelationalDatabase::AccountTxs, int > ripple::detail::getOldestAccountTxs | ( | soci::session & | session, |
Application & | app, | ||
LedgerMaster & | ledgerMaster, | ||
RelationalDatabase::AccountTxOptions const & | options, | ||
std::optional< int > const & | limit_used, | ||
beast::Journal | j | ||
) |
getOldestAccountTxs Returns oldest transactions for given account which match given criteria starting from given offset.
session | Session with database. |
app | Application object. |
ledgerMaster | LedgerMaster object. |
options | Struct AccountTxOptions which contain criteria to match: the account, minimum and maximum ledger numbers to search, offset of first entry to return, number of transactions to return, flag if this number unlimited. |
limit_used | Number or transactions already returned in calls to another shard databases, if shard databases are used. None if node database is used. |
j | Journal. |
std::pair< RelationalDatabase::AccountTxs, int > ripple::detail::getNewestAccountTxs | ( | soci::session & | session, |
Application & | app, | ||
LedgerMaster & | ledgerMaster, | ||
RelationalDatabase::AccountTxOptions const & | options, | ||
std::optional< int > const & | limit_used, | ||
beast::Journal | j | ||
) |
getNewestAccountTxs Returns newest transactions for given account which match given criteria starting from given offset.
session | Session with database. |
app | Application object. |
ledgerMaster | LedgerMaster object. |
options | Struct AccountTxOptions which contain criteria to match: the account, minimum and maximum ledger numbers to search, offset of first entry to return, number of transactions to return, flag if this number unlimited. |
limit_used | Number or transactions already returned in calls to another shard databases, if shard databases are used. None if node database is used. |
j | Journal. |
|
static |
getAccountTxsB Returns the oldest or newest transactions in binary form for the account that matches given criteria starting from the provided offset.
session | Session with the database. |
app | Application object. |
options | Struct AccountTxOptions which contains the criteria to match: the account, the ledger search range, the offset of the first entry to return, the number of transactions to return, and a flag if this number is unlimited. |
limit_used | Number of transactions already returned in calls to other shard databases, if shard databases are used. No value if the node database is used. |
descending | True for descending order, false for ascending. |
j | Journal. |
std::pair< std::vector< RelationalDatabase::txnMetaLedgerType >, int > ripple::detail::getOldestAccountTxsB | ( | soci::session & | session, |
Application & | app, | ||
RelationalDatabase::AccountTxOptions const & | options, | ||
std::optional< int > const & | limit_used, | ||
beast::Journal | j | ||
) |
getOldestAccountTxsB Returns oldest transactions in binary form for given account which match given criteria starting from given offset.
session | Session with database. |
app | Application object. |
options | Struct AccountTxOptions which contain criteria to match: the account, minimum and maximum ledger numbers to search, offset of first entry to return, number of transactions to return, flag if this number unlimited. |
limit_used | Number or transactions already returned in calls to another shard databases, if shard databases are used. None if node database is used. |
j | Journal. |
std::pair< std::vector< RelationalDatabase::txnMetaLedgerType >, int > ripple::detail::getNewestAccountTxsB | ( | soci::session & | session, |
Application & | app, | ||
RelationalDatabase::AccountTxOptions const & | options, | ||
std::optional< int > const & | limit_used, | ||
beast::Journal | j | ||
) |
getNewestAccountTxsB Returns newest transactions in binary form for given account which match given criteria starting from given offset.
session | Session with database. |
app | Application object. |
options | Struct AccountTxOptions which contain criteria to match: the account, minimum and maximum ledger numbers to search, offset of first entry to return, number of transactions to return, flag if this number unlimited. |
limit_used | Number or transactions already returned in calls to another shard databases, if shard databases are used. None if node database is used. |
j | Journal. |
|
static |
accountTxPage Searches for the oldest or newest transactions for the account that matches the given criteria starting from the provided marker and invokes the callback parameter for each found transaction.
session | Session with the database. |
onUnsavedLedger | Callback function to call on each found unsaved ledger within the given range. |
onTransaction | Callback function to call on each found transaction. |
options | Struct AccountTxPageOptions which contains the criteria to match: the account, the ledger search range, the marker of the first returned entry, the number of transactions to return, and a flag if this number unlimited. |
limit_used | Number of transactions already returned in calls to other shard databases. |
page_length | Total number of transactions to return. |
forward | True for ascending order, false for descending. |
std::pair< std::optional< RelationalDatabase::AccountTxMarker >, int > ripple::detail::oldestAccountTxPage | ( | soci::session & | session, |
std::function< void(std::uint32_t)> const & | onUnsavedLedger, | ||
std::function< void(std::uint32_t, std::string const &, Blob &&, Blob &&)> const & | onTransaction, | ||
RelationalDatabase::AccountTxPageOptions const & | options, | ||
int | limit_used, | ||
std::uint32_t | page_length | ||
) |
oldestAccountTxPage Searches oldest transactions for given account which match given criteria starting from given marker and calls callback for each found transaction.
session | Session with database. |
onUnsavedLedger | Callback function to call on each found unsaved ledger within given range. |
onTransaction | Callback function to call on each found transaction. |
options | Struct AccountTxPageOptions which contain criteria to match: the account, minimum and maximum ledger numbers to search, marker of first returned entry, number of transactions to return, flag if this number unlimited. |
limit_used | Number or transactions already returned in calls to another shard databases. |
page_length | Total number of transactions to return. |
std::pair< std::optional< RelationalDatabase::AccountTxMarker >, int > ripple::detail::newestAccountTxPage | ( | soci::session & | session, |
std::function< void(std::uint32_t)> const & | onUnsavedLedger, | ||
std::function< void(std::uint32_t, std::string const &, Blob &&, Blob &&)> const & | onTransaction, | ||
RelationalDatabase::AccountTxPageOptions const & | options, | ||
int | limit_used, | ||
std::uint32_t | page_length | ||
) |
newestAccountTxPage Searches newest transactions for given account which match given criteria starting from given marker and calls callback for each found transaction.
session | Session with database. |
onUnsavedLedger | Callback function to call on each found unsaved ledger within given range. |
onTransaction | Callback function to call on each found transaction. |
options | Struct AccountTxPageOptions which contain criteria to match: the account, minimum and maximum ledger numbers to search, marker of first returned entry, number of transactions to return, flag if this number unlimited. |
limit_used | Number or transactions already returned in calls to another shard databases. |
page_length | Total number of transactions to return. |
std::variant< RelationalDatabase::AccountTx, TxSearched > ripple::detail::getTransaction | ( | soci::session & | session, |
Application & | app, | ||
uint256 const & | id, | ||
std::optional< ClosedInterval< uint32_t >> const & | range, | ||
error_code_i & | ec | ||
) |
getTransaction Returns transaction with given hash.
If not found and range given then check if all ledgers from the range are present in the database.
session | Session with database. |
app | Application object. |
id | Hash of the transaction. |
range | Range of ledgers to check, if present. |
ec | Default value of error code. |
bool ripple::detail::dbHasSpace | ( | soci::session & | session, |
Config const & | config, | ||
beast::Journal | j | ||
) |
DatabasePair ripple::detail::makeMetaDBs | ( | Config const & | config, |
DatabaseCon::Setup const & | setup, | ||
DatabaseCon::CheckpointerSetup const & | checkpointerSetup | ||
) |
makeMetaDBs Opens ledger and transaction 'meta' databases which map ledger hashes and transaction IDs to the index of the shard that holds the ledger or transaction.
config | Config object. |
setup | Path to database and opening parameters. |
checkpointerSetup | Database checkpointer setup. |
Definition at line 32 of file app/rdb/backend/detail/impl/Shard.cpp.
bool ripple::detail::saveLedgerMeta | ( | std::shared_ptr< Ledger const > const & | ledger, |
Application & | app, | ||
soci::session & | lgrMetaSession, | ||
soci::session & | txnMetaSession, | ||
std::uint32_t | shardIndex | ||
) |
saveLedgerMeta Stores (transaction ID -> shard index) and (ledger hash -> shard index) mappings in the meta databases.
ledger | The ledger. |
app | Application object. |
lgrMetaSession | Session to ledger meta database. |
txnMetaSession | Session to transaction meta database. |
shardIndex | The index of the shard that contains this ledger. |
Definition at line 56 of file app/rdb/backend/detail/impl/Shard.cpp.
std::optional< std::uint32_t > ripple::detail::getShardIndexforLedger | ( | soci::session & | session, |
LedgerHash const & | hash | ||
) |
getShardIndexforLedger Queries the ledger meta database to retrieve the index of the shard that contains this ledger.
session | Session to the database. |
hash | Hash of the ledger. |
Definition at line 117 of file app/rdb/backend/detail/impl/Shard.cpp.
std::optional< std::uint32_t > ripple::detail::getShardIndexforTransaction | ( | soci::session & | session, |
TxID const & | id | ||
) |
getShardIndexforTransaction Queries the transaction meta database to retrieve the index of the shard that contains this transaction.
session | Session to the database. |
id | ID of the transaction. |
Definition at line 131 of file app/rdb/backend/detail/impl/Shard.cpp.
std::string ripple::detail::toString | ( | LedgerInfo const & | info | ) |
Convenience function for printing out basic ledger info.
Definition at line 42 of file ReportingETL.cpp.
|
noexcept |
Definition at line 43 of file hardened_hash.h.
|
noexcept |
Definition at line 31 of file contract.cpp.
boost::thread_specific_ptr<detail::LocalValues>& ripple::detail::getLocalValues | ( | ) |
Definition at line 74 of file LocalValue.h.
|
noexcept |
Inform the processor that we are in a tight spin-wait loop.
Spinlocks caught in tight loops can result in the processor's pipeline filling up with comparison operations, resulting in a misprediction at the time the lock is finally acquired, necessitating pipeline flushing which is ridiculously expensive and results in very high latency.
This function instructs the processor to "pause" for some architecture specific amount of time, to prevent this.
Definition at line 44 of file spinlock.h.
std::string ripple::detail::getSociSqliteInit | ( | std::string const & | name, |
std::string const & | dir, | ||
std::string const & | ext | ||
) |
Definition at line 42 of file SociDB.cpp.
std::string ripple::detail::getSociInit | ( | BasicConfig const & | config, |
std::string const & | dbName | ||
) |
Definition at line 60 of file SociDB.cpp.
bool ripple::detail::internalDirNext | ( | V & | view, |
uint256 const & | root, | ||
std::shared_ptr< N > & | page, | ||
unsigned int & | index, | ||
uint256 & | entry | ||
) |
bool ripple::detail::internalDirFirst | ( | V & | view, |
uint256 const & | root, | ||
std::shared_ptr< N > & | page, | ||
unsigned int & | index, | ||
uint256 & | entry | ||
) |
auto ripple::detail::buffersBegin | ( | BufferSequence const & | bufs | ) |
Definition at line 153 of file ProtocolMessage.h.
auto ripple::detail::buffersEnd | ( | BufferSequence const & | bufs | ) |
Definition at line 161 of file ProtocolMessage.h.
std::optional<MessageHeader> ripple::detail::parseMessageHeader | ( | boost::system::error_code & | ec, |
BufferSequence const & | bufs, | ||
std::size_t | size | ||
) |
Parse a message header.
ec | contains more information:
|
Definition at line 178 of file ProtocolMessage.h.
std::shared_ptr<T> ripple::detail::parseMessageContent | ( | MessageHeader const & | header, |
Buffers const & | buffers | ||
) |
Definition at line 273 of file ProtocolMessage.h.
bool ripple::detail::invoke | ( | MessageHeader const & | header, |
Buffers const & | buffers, | ||
Handler & | handler | ||
) |
Definition at line 308 of file ProtocolMessage.h.
std::map< std::string, VoteBehavior > const & ripple::detail::supportedAmendments | ( | ) |
Amendments that this server supports and the default voting behavior.
Amendments that this server supports.
Whether they are enabled depends on the Rules defined in the validated ledger
Definition at line 320 of file Feature.cpp.
std::size_t ripple::detail::numDownVotedAmendments | ( | ) |
Amendments that this server won't vote for by default.
This function is only used in unit tests.
Definition at line 327 of file Feature.cpp.
std::size_t ripple::detail::numUpVotedAmendments | ( | ) |
Amendments that this server will vote for by default.
This function is only used in unit tests.
Definition at line 334 of file Feature.cpp.
|
constexpr |
Definition at line 31 of file HashPrefix.h.
void ripple::detail::copy_uint32 | ( | std::uint8_t * | out, |
std::uint32_t | v | ||
) |
Definition at line 59 of file SecretKey.cpp.
Definition at line 68 of file SecretKey.cpp.
STVar ripple::detail::make_stvar | ( | Args &&... | args | ) |
|
static |
|
static |
Definition at line 99 of file tokens.cpp.
|
static |
Definition at line 150 of file tokens.cpp.
SlabAllocatorSet<SHAMapItem> ripple::detail::slabber | ( | { { 128, megabytes(std::size_t(60)) }, { 192, megabytes(std::size_t(46)) }, { 272, megabytes(std::size_t(60)) }, { 384, megabytes(std::size_t(56)) }, { 564, megabytes(std::size_t(40)) }, { 772, megabytes(std::size_t(46)) }, { 1052, megabytes(std::size_t(60)) }, } | ) |
std::string ripple::detail::configContents | ( | std::string const & | dbPath, |
std::string const & | validatorsFile | ||
) |
Definition at line 34 of file Config_test.cpp.
std::string ripple::detail::valFileContents | ( | ) |
Definition at line 203 of file Config_test.cpp.
|
staticconstexpr |
defaultObject_t ripple::detail::defaultObject |
nonPresentObject_t ripple::detail::nonPresentObject |
|
constexpr |
Definition at line 35 of file UintTypes.cpp.
|
constexpr |
Definition at line 42 of file UintTypes.cpp.
|
constexpr |
Definition at line 45 of file UintTypes.cpp.