Compare commits

...

11 Commits

Author SHA1 Message Date
Sergey Kuznetsov
8575f786a8 Comment out macOS CI (#1164) 2024-02-07 15:57:50 +00:00
Alex Kremer
08b02c64cb Fix amm_info amounts in output map to user input (#1162)
Fixes #1156
2024-02-06 21:12:57 +00:00
Alex Kremer
b358649cf9 Add missing include (#1161)
Fixes #1160
2024-02-06 12:35:35 +00:00
github-actions[bot]
6bd72355db [CI] clang-tidy auto fixes (#1159)
Fixes #1158
2024-02-06 12:08:44 +00:00
Alex Kremer
a1699d7484 Rename headers to .hpp (#1154)
Fixes #1153
2024-02-05 13:10:50 +00:00
Sergey Kuznetsov
957aadd25a Requests library (#1140)
For #51.

First part of improving forwarding - library for easy async requests.
2024-02-05 11:35:10 +00:00
Alex Kremer
8f89a5913d Fix paging bug in range deletion tool (#1150) 2024-02-02 16:29:17 +00:00
github-actions[bot]
ecfe5e84e5 [CI] clang-tidy auto fixes (#1152)
Co-authored-by: kuznetsss <kuznetsss@users.noreply.github.com>
2024-02-02 09:34:08 +00:00
Alex Kremer
03c0940649 Fix most includes in headers (#1149)
Fixes #1146
2024-02-01 12:49:11 +00:00
cyan317
dc5aacfe39 Side chain ledgerentry (#1144)
Fix #861
2024-02-01 09:12:24 +00:00
Alex Kremer
3fda74e3f7 Cassandra data removal tool (#1142)
Fixes #1143
2024-01-30 13:27:42 +00:00
387 changed files with 6453 additions and 3077 deletions

View File

@@ -17,12 +17,28 @@ if [[ "17.0.0" > "$version" ]]; then
Please fix paths and run again.
-----------------------------------------------------------------------------
EOF
exit 3
fi
# check there is no .h headers, only .hpp
wrong_headers=$(find $sources -name "*.h" | sed 's/^/ - /')
if [[ ! -z "$wrong_headers" ]]; then
cat <<EOF
ERROR
-----------------------------------------------------------------------------
Found .h headers in the source code. Please rename them to .hpp:
$wrong_headers
-----------------------------------------------------------------------------
EOF
exit 2
fi
function grep_code {
grep -l "${1}" ${sources} -r --include \*.h --include \*.cpp
grep -l "${1}" ${sources} -r --include \*.hpp --include \*.cpp
}
if [[ "$OSTYPE" == "darwin"* ]]; then
@@ -42,7 +58,7 @@ else
fi
first=$(git diff $sources)
find $sources -type f \( -name '*.cpp' -o -name '*.h' -o -name '*.ipp' \) -print0 | xargs -0 $formatter
find $sources -type f \( -name '*.cpp' -o -name '*.hpp' -o -name '*.ipp' \) -print0 | xargs -0 $formatter
second=$(git diff $sources)
changes=$(diff <(echo "$first") <(echo "$second") | wc -l | sed -e 's/^[[:space:]]*//')

View File

@@ -32,9 +32,9 @@ jobs:
image: rippleci/clio_ci:latest
build_type: Debug
code_coverage: true
- os: macOS
build_type: Release
code_coverage: false
# - os: macOS
# build_type: Release
# code_coverage: false
runs-on: [self-hosted, "${{ matrix.os }}"]
container: ${{ matrix.container }}
@@ -137,7 +137,7 @@ jobs:
- os: heavy
container:
image: rippleci/clio_ci:latest
- os: macOS
# - os: macOS
runs-on: [self-hosted, "${{ matrix.os }}"]
container: ${{ matrix.container }}

View File

@@ -11,8 +11,8 @@ jobs:
fail-fast: false
matrix:
include:
- os: macOS
build_type: Release
# - os: macOS
# build_type: Release
- os: heavy
build_type: Release
container:
@@ -76,8 +76,8 @@ jobs:
fail-fast: false
matrix:
include:
- os: macOS
build_type: Release
# - os: macOS
# build_type: Release
- os: heavy
build_type: Release
- os: heavy

View File

@@ -17,7 +17,7 @@
*/
//==============================================================================
#include "main/Build.h"
#include "main/Build.hpp"
#include <string>

View File

@@ -163,6 +163,10 @@ target_sources (clio PRIVATE
src/util/prometheus/OStream.cpp
src/util/prometheus/Prometheus.cpp
src/util/Random.cpp
src/util/requests/RequestBuilder.cpp
src/util/requests/Types.cpp
src/util/requests/WsConnection.cpp
src/util/requests/impl/SslContext.cpp
src/util/Taggable.cpp
src/util/TerminationHandler.cpp
src/util/TxUtils.cpp
@@ -192,8 +196,10 @@ if (tests)
unittests/util/TestGlobals.cpp
unittests/util/AssertTests.cpp
unittests/util/BatchingTests.cpp
unittests/util/TxUtilTests.cpp
unittests/util/TestHttpServer.cpp
unittests/util/TestObject.cpp
unittests/util/TestWsServer.cpp
unittests/util/TxUtilTests.cpp
unittests/util/StringUtils.cpp
unittests/util/LedgerUtilsTests.cpp
unittests/util/prometheus/CounterTests.cpp
@@ -204,6 +210,9 @@ if (tests)
unittests/util/prometheus/MetricBuilderTests.cpp
unittests/util/prometheus/MetricsFamilyTests.cpp
unittests/util/prometheus/OStreamTests.cpp
unittests/util/requests/RequestBuilderTests.cpp
unittests/util/requests/SslContextTests.cpp
unittests/util/requests/WsConnectionTests.cpp
# ETL
unittests/etl/ExtractionDataPipeTests.cpp
unittests/etl/ExtractorTests.cpp

View File

@@ -1,6 +1,6 @@
PROJECT_NAME = "Clio"
INPUT = ../src ../unittests
EXCLUDE_PATTERNS = *Test*.cpp *Test*.h
EXCLUDE_PATTERNS = *Test*.cpp *Test*.hpp
RECURSIVE = YES
HAVE_DOT = YES

View File

@@ -1,183 +0,0 @@
#!/usr/bin/python3
import argparse
from datetime import datetime
def getTime(line):
bracketOpen = line.find("[")
bracketClose = line.find("]")
timestampSub = line[bracketOpen+1:bracketClose]
timestamp = datetime.strptime(timestampSub, '%Y-%m-%d %H:%M:%S.%f')
return timestamp.timestamp()
def parseAccountTx(filename):
with open(filename) as f:
totalProcTime = 0.0
totalTxnTime = 0.0
numCalls = 0
for line in f:
if "executed stored_procedure" in line:
idx = line.find("in ")
idx = idx + 3
idx2 = line.find("num")
procTime = float(line[idx:idx2])
totalProcTime += procTime
if "fetchTransactions fetched" in line:
idx = line.find("took ")
idx = idx + 5
txnTime = float(line[idx:])
totalTxnTime += txnTime
numCalls = numCalls + 1
print(totalProcTime)
print(totalProcTime/numCalls)
print(totalTxnTime)
print(totalTxnTime/numCalls)
def parseLogs(filename, interval, minTxnCount = 0):
with open(filename) as f:
totalTime = 0
totalTxns = 0
totalObjs = 0
totalLoadTime = 0
start = 0
end = 0
totalLedgers = 0
intervalTime = 0
intervalTxns = 0
intervalObjs = 0
intervalLoadTime = 0
intervalStart = 0
intervalEnd = 0
intervalLedgers = 0
ledgersPerSecond = 0
print("ledgers, transactions, objects, loadTime, loadTime/ledger, ledgers/sec, txns/sec, objs/sec")
for line in f:
if "Load phase" in line:
sequenceIdx = line.find("Sequence : ")
hashIdx = line.find(" Hash :")
sequence = line[sequenceIdx + len("Sequence : "):hashIdx]
txnCountSubstr = "txn count = "
objCountSubstr = ". object count = "
loadTimeSubstr = ". load time = "
txnsSubstr = ". load txns per second = "
objsSubstr = ". load objs per second = "
txnCountIdx = line.find(txnCountSubstr)
objCountIdx = line.find(objCountSubstr)
loadTimeIdx = line.find(loadTimeSubstr)
txnsIdx = line.find(txnsSubstr)
objsIdx = line.find(objsSubstr)
txnCount = line[txnCountIdx + len(txnCountSubstr):objCountIdx]
objCount = line[objCountIdx + len(objCountSubstr):loadTimeIdx]
loadTime = line[loadTimeIdx + len(loadTimeSubstr):txnsIdx]
txnsPerSecond = line[txnsIdx + len(txnsSubstr):objsIdx]
objsPerSecond = line[objsIdx + len(objsSubstr):-1]
if int(txnCount) >= minTxnCount:
totalTime += float(loadTime);
totalTxns += float(txnCount)
totalObjs += float(objCount)
intervalTime += float(loadTime)
intervalTxns += float(txnCount)
intervalObjs += float(objCount)
totalLoadTime += float(loadTime)
intervalLoadTime += float(loadTime)
if start == 0:
start = getTime(line)
prevEnd = end
end = getTime(line)
if intervalStart == 0:
intervalStart = getTime(line)
intervalEnd = getTime(line)
totalLedgers+=1
intervalLedgers+=1
ledgersPerSecond = 0
if end != start:
ledgersPerSecond = float(totalLedgers) / float((end - start))
intervalLedgersPerSecond = 0
if intervalEnd != intervalStart:
intervalLedgersPerSecond = float(intervalLedgers) / float((intervalEnd - intervalStart))
if int(sequence) % interval == 0:
# print("Sequence = " + sequence + " : [time, txCount, objCount, txPerSec, objsPerSec]")
# print(loadTime + " , "
# + txnCount + " , "
# + objCount + " , "
# + txnsPerSecond + " , "
# + objsPerSecond)
# print("Interval Aggregate ( " + str(interval) + " ) [ledgers, txns, objects, elapsedTime, ledgersPerSec, avgLoadTime, txPerSec, objsPerSec]: ")
print(str(intervalLedgers) + " , "
+ str(intervalTxns) + " , "
+ str(intervalObjs) + " , "
+ str(intervalLoadTime) + " , "
+ str(intervalLoadTime/intervalLedgers) + " , "
+ str(intervalLedgers/intervalLoadTime) + " , "
+ str(intervalTxns/intervalLoadTime) + " , "
+ str(intervalObjs/intervalLoadTime))
# print("Total Aggregate: [ledgers, txns, objects, elapsedTime, ledgersPerSec, avgLoadTime, txPerSec, objsPerSec]")
# print(str(totalLedgers) + " , "
# + str(totalTxns) + " , "
# + str(totalObjs) + " , "
# + str(end-start) + " , "
# + str(ledgersPerSecond) + " , "
# + str(totalLoadTime/totalLedgers) + " , "
# + str(totalTxns/totalTime) + " , "
# + str(totalObjs/totalTime))
if int(sequence) % interval == 0:
intervalTime = 0
intervalTxns = 0
intervalObjs = 0
intervalStart = 0
intervalEnd = 0
intervalLedgers = 0
intervalLoadTime = 0
print("Total Aggregate: [ledgers, elapsedTime, ledgersPerSec, avgLoadTime, txPerSec, objsPerSec]")
print(totalLedgers)
print(totalLoadTime)
print(str(totalLedgers) + " : "
+ str(end-start) + " : "
+ str(ledgersPerSecond) + " : "
+ str(totalLoadTime/totalLedgers) + " : "
+ str(totalTxns/totalTime) + " : "
+ str(totalObjs/totalTime))
parser = argparse.ArgumentParser(description='parses logs')
parser.add_argument("--filename")
parser.add_argument("--interval",default=100000)
parser.add_argument("--minTxnCount",default=0)
parser.add_argument("--account_tx",default=False)
args = parser.parse_args()
def run(args):
if args.account_tx:
parseAccountTx(args.filename)
else:
parseLogs(args.filename, int(args.interval))
run(args)

View File

@@ -17,11 +17,11 @@
*/
//==============================================================================
#include "data/BackendCounters.h"
#include "data/BackendCounters.hpp"
#include "util/Assert.h"
#include "util/prometheus/Label.h"
#include "util/prometheus/Prometheus.h"
#include "util/Assert.hpp"
#include "util/prometheus/Label.hpp"
#include "util/prometheus/Prometheus.hpp"
#include <boost/json/object.hpp>

View File

@@ -19,14 +19,17 @@
#pragma once
#include "util/prometheus/Prometheus.h"
#include "util/prometheus/Counter.hpp"
#include "util/prometheus/Gauge.hpp"
#include "util/prometheus/Histogram.hpp"
#include <boost/json/object.hpp>
#include <atomic>
#include <chrono>
#include <cstdint>
#include <functional>
#include <memory>
#include <utility>
#include <string>
namespace data {

View File

@@ -19,12 +19,18 @@
#pragma once
#include "data/BackendInterface.h"
#include "data/CassandraBackend.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "data/CassandraBackend.hpp"
#include "data/cassandra/SettingsProvider.hpp"
#include "util/config/Config.hpp"
#include "util/log/Logger.hpp"
#include <boost/algorithm/string.hpp>
#include <boost/algorithm/string/predicate.hpp>
#include <memory>
#include <stdexcept>
#include <string>
namespace data {

View File

@@ -17,11 +17,11 @@
*/
//==============================================================================
#include "data/BackendInterface.h"
#include "data/BackendInterface.hpp"
#include "data/Types.h"
#include "util/Assert.h"
#include "util/log/Logger.h"
#include "data/Types.hpp"
#include "util/Assert.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/spawn.hpp>
#include <ripple/basics/base_uint.h>

View File

@@ -19,19 +19,32 @@
#pragma once
#include "data/DBHelpers.h"
#include "data/LedgerCache.h"
#include "data/Types.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "data/DBHelpers.hpp"
#include "data/LedgerCache.hpp"
#include "data/Types.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/executor_work_guard.hpp>
#include <boost/asio/io_context.hpp>
#include <boost/asio/spawn.hpp>
#include <boost/json.hpp>
#include <boost/json/object.hpp>
#include <boost/utility/result_of.hpp>
#include <ripple/basics/base_uint.h>
#include <ripple/protocol/AccountID.h>
#include <ripple/protocol/Fees.h>
#include <ripple/protocol/LedgerHeader.h>
#include <chrono>
#include <cstddef>
#include <cstdint>
#include <exception>
#include <optional>
#include <shared_mutex>
#include <string>
#include <thread>
#include <type_traits>
#include <vector>
namespace data {

View File

@@ -19,21 +19,43 @@
#pragma once
#include "data/BackendInterface.h"
#include "data/cassandra/Concepts.h"
#include "data/cassandra/Handle.h"
#include "data/cassandra/Schema.h"
#include "data/cassandra/SettingsProvider.h"
#include "data/cassandra/impl/ExecutionStrategy.h"
#include "util/Assert.h"
#include "util/LedgerUtils.h"
#include "util/Profiler.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "data/DBHelpers.hpp"
#include "data/Types.hpp"
#include "data/cassandra/Concepts.hpp"
#include "data/cassandra/Handle.hpp"
#include "data/cassandra/Schema.hpp"
#include "data/cassandra/SettingsProvider.hpp"
#include "data/cassandra/Types.hpp"
#include "data/cassandra/impl/ExecutionStrategy.hpp"
#include "util/Assert.hpp"
#include "util/LedgerUtils.hpp"
#include "util/Profiler.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/spawn.hpp>
#include <boost/json/object.hpp>
#include <cassandra.h>
#include <ripple/basics/Blob.h>
#include <ripple/basics/base_uint.h>
#include <ripple/basics/strHex.h>
#include <ripple/protocol/AccountID.h>
#include <ripple/protocol/LedgerHeader.h>
#include <ripple/protocol/nft.h>
#include <atomic>
#include <chrono>
#include <cstddef>
#include <cstdint>
#include <iterator>
#include <limits>
#include <optional>
#include <stdexcept>
#include <string>
#include <tuple>
#include <utility>
#include <vector>
namespace data::cassandra {
/**

View File

@@ -20,16 +20,25 @@
/** @file */
#pragma once
#include "data/Types.h"
#include "util/Assert.h"
#include "util/Assert.hpp"
#include <boost/container/flat_set.hpp>
#include <ripple/basics/Blob.h>
#include <ripple/basics/Log.h>
#include <ripple/basics/StringUtilities.h>
#include <ripple/basics/base_uint.h>
#include <ripple/protocol/AccountID.h>
#include <ripple/protocol/SField.h>
#include <ripple/protocol/STAccount.h>
#include <ripple/protocol/STLedgerEntry.h>
#include <ripple/protocol/Serializer.h>
#include <ripple/protocol/TxMeta.h>
#include <cstddef>
#include <cstdint>
#include <optional>
#include <string>
/**
* @brief Struct used to keep track of what to write to account_transactions/account_tx tables.
*/

View File

@@ -17,10 +17,10 @@
*/
//==============================================================================
#include "data/LedgerCache.h"
#include "data/LedgerCache.hpp"
#include "data/Types.h"
#include "util/Assert.h"
#include "data/Types.hpp"
#include "util/Assert.hpp"
#include <ripple/basics/base_uint.h>

View File

@@ -19,17 +19,23 @@
#pragma once
#include "data/Types.h"
#include "util/prometheus/Prometheus.h"
#include "data/Types.hpp"
#include "util/prometheus/Counter.hpp"
#include "util/prometheus/Label.hpp"
#include "util/prometheus/Prometheus.hpp"
#include <ripple/basics/base_uint.h>
#include <ripple/basics/hardened_hash.h>
#include <atomic>
#include <condition_variable>
#include <cstddef>
#include <cstdint>
#include <functional>
#include <map>
#include <mutex>
#include <optional>
#include <shared_mutex>
#include <utility>
#include <unordered_set>
#include <vector>
namespace data {

View File

@@ -22,9 +22,10 @@
#include <ripple/basics/base_uint.h>
#include <ripple/protocol/AccountID.h>
#include <cstdint>
#include <optional>
#include <string>
#include <string_view>
#include <tuple>
#include <utility>
#include <vector>

View File

@@ -19,15 +19,20 @@
#pragma once
#include "data/cassandra/Types.h"
#include "data/cassandra/Types.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/spawn.hpp>
#include <boost/json.hpp>
#include <boost/json/object.hpp>
#include <chrono>
#include <concepts>
#include <cstdint>
#include <optional>
#include <string>
#include <utility>
#include <vector>
namespace data::cassandra {

View File

@@ -21,6 +21,8 @@
#include <cassandra.h>
#include <cstdint>
#include <ostream>
#include <string>
#include <utility>

View File

@@ -17,9 +17,9 @@
*/
//==============================================================================
#include "data/cassandra/Handle.h"
#include "data/cassandra/Handle.hpp"
#include "data/cassandra/Types.h"
#include "data/cassandra/Types.hpp"
#include <cassandra.h>

View File

@@ -19,22 +19,20 @@
#pragma once
#include "data/cassandra/Error.h"
#include "data/cassandra/Types.h"
#include "data/cassandra/impl/Batch.h"
#include "data/cassandra/impl/Cluster.h"
#include "data/cassandra/impl/Future.h"
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/Result.h"
#include "data/cassandra/impl/Session.h"
#include "data/cassandra/impl/Statement.h"
#include "util/Expected.h"
#include "data/cassandra/Error.hpp"
#include "data/cassandra/Types.hpp"
#include "data/cassandra/impl/Batch.hpp"
#include "data/cassandra/impl/Cluster.hpp"
#include "data/cassandra/impl/Future.hpp"
#include "data/cassandra/impl/ManagedObject.hpp"
#include "data/cassandra/impl/Result.hpp"
#include "data/cassandra/impl/Session.hpp"
#include "data/cassandra/impl/Statement.hpp"
#include <cassandra.h>
#include <chrono>
#include <compare>
#include <iterator>
#include <functional>
#include <string_view>
#include <vector>
namespace data::cassandra {

View File

@@ -19,16 +19,19 @@
#pragma once
#include "data/cassandra/Concepts.h"
#include "data/cassandra/Handle.h"
#include "data/cassandra/SettingsProvider.h"
#include "data/cassandra/Types.h"
#include "util/Expected.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "data/cassandra/Concepts.hpp"
#include "data/cassandra/Handle.hpp"
#include "data/cassandra/Types.hpp"
#include "util/log/Logger.hpp"
#include <fmt/compile.h>
#include <functional>
#include <memory>
#include <string>
#include <string_view>
#include <vector>
namespace data::cassandra {
template <SomeSettingsProvider SettingsProviderType>

View File

@@ -17,12 +17,12 @@
*/
//==============================================================================
#include "data/cassandra/SettingsProvider.h"
#include "data/cassandra/SettingsProvider.hpp"
#include "data/cassandra/Types.h"
#include "data/cassandra/impl/Cluster.h"
#include "util/Constants.h"
#include "util/config/Config.h"
#include "data/cassandra/Types.hpp"
#include "data/cassandra/impl/Cluster.hpp"
#include "util/Constants.hpp"
#include "util/config/Config.hpp"
#include <boost/json/conversion.hpp>
#include <boost/json/value.hpp>

View File

@@ -19,11 +19,14 @@
#pragma once
#include "data/cassandra/Handle.h"
#include "data/cassandra/Types.h"
#include "util/Expected.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "data/cassandra/Handle.hpp"
#include "data/cassandra/Types.hpp"
#include "util/config/Config.hpp"
#include "util/log/Logger.hpp"
#include <cstdint>
#include <optional>
#include <string>
namespace data::cassandra {

View File

@@ -19,9 +19,9 @@
#pragma once
#include "util/Expected.h"
#include "util/Expected.hpp"
#include <string>
#include <cstdint>
namespace data::cassandra {

View File

@@ -19,17 +19,20 @@
#pragma once
#include "data/cassandra/Concepts.h"
#include "data/cassandra/Handle.h"
#include "data/cassandra/Types.h"
#include "data/cassandra/impl/RetryPolicy.h"
#include "util/Expected.h"
#include "util/log/Logger.h"
#include "data/cassandra/Concepts.hpp"
#include "data/cassandra/Handle.hpp"
#include "data/cassandra/Types.hpp"
#include "data/cassandra/impl/RetryPolicy.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio.hpp>
#include <boost/asio/io_context.hpp>
#include <functional>
#include <memory>
#include <mutex>
#include <optional>
#include <utility>
namespace data::cassandra::detail {

View File

@@ -17,13 +17,13 @@
*/
//==============================================================================
#include "data/cassandra/impl/Batch.h"
#include "data/cassandra/impl/Batch.hpp"
#include "data/cassandra/Error.h"
#include "data/cassandra/Types.h"
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/Statement.h"
#include "util/Expected.h"
#include "data/cassandra/Error.hpp"
#include "data/cassandra/Types.hpp"
#include "data/cassandra/impl/ManagedObject.hpp"
#include "data/cassandra/impl/Statement.hpp"
#include "util/Expected.hpp"
#include <cassandra.h>

View File

@@ -19,11 +19,13 @@
#pragma once
#include "data/cassandra/Types.h"
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/Types.hpp"
#include "data/cassandra/impl/ManagedObject.hpp"
#include <cassandra.h>
#include <vector>
namespace data::cassandra::detail {
struct Batch : public ManagedObject<CassBatch> {

View File

@@ -17,11 +17,11 @@
*/
//==============================================================================
#include "data/cassandra/impl/Cluster.h"
#include "data/cassandra/impl/Cluster.hpp"
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/SslContext.h"
#include "util/log/Logger.h"
#include "data/cassandra/impl/ManagedObject.hpp"
#include "data/cassandra/impl/SslContext.hpp"
#include "util/log/Logger.hpp"
#include <cassandra.h>
#include <fmt/core.h>

View File

@@ -19,8 +19,8 @@
#pragma once
#include "data/cassandra/impl/ManagedObject.h"
#include "util/log/Logger.h"
#include "data/cassandra/impl/ManagedObject.hpp"
#include "util/log/Logger.hpp"
#include <cassandra.h>

View File

@@ -19,13 +19,16 @@
#pragma once
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/ManagedObject.hpp"
#include <cassandra.h>
#include <ripple/basics/base_uint.h>
#include <cstdint>
#include <stdexcept>
#include <string>
#include <string_view>
#include <vector>
namespace data::cassandra::detail {

View File

@@ -19,26 +19,35 @@
#pragma once
#include "data/BackendCounters.h"
#include "data/BackendInterface.h"
#include "data/cassandra/Handle.h"
#include "data/cassandra/Types.h"
#include "data/cassandra/impl/AsyncExecutor.h"
#include "util/Assert.h"
#include "util/Batching.h"
#include "util/Expected.h"
#include "util/log/Logger.h"
#include "data/BackendCounters.hpp"
#include "data/BackendInterface.hpp"
#include "data/cassandra/Handle.hpp"
#include "data/cassandra/Types.hpp"
#include "data/cassandra/impl/AsyncExecutor.hpp"
#include "util/Assert.hpp"
#include "util/Batching.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio.hpp>
#include <boost/asio/associated_executor.hpp>
#include <boost/asio/io_context.hpp>
#include <boost/asio/io_service.hpp>
#include <boost/asio/spawn.hpp>
#include <boost/json/object.hpp>
#include <atomic>
#include <chrono>
#include <condition_variable>
#include <cstddef>
#include <cstdint>
#include <functional>
#include <memory>
#include <mutex>
#include <optional>
#include <stdexcept>
#include <thread>
#include <type_traits>
#include <vector>
namespace data::cassandra::detail {

View File

@@ -17,12 +17,12 @@
*/
//==============================================================================
#include "data/cassandra/impl/Future.h"
#include "data/cassandra/impl/Future.hpp"
#include "data/cassandra/Error.h"
#include "data/cassandra/Types.h"
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/Result.h"
#include "data/cassandra/Error.hpp"
#include "data/cassandra/Types.hpp"
#include "data/cassandra/impl/ManagedObject.hpp"
#include "data/cassandra/impl/Result.hpp"
#include <cassandra.h>

View File

@@ -19,11 +19,14 @@
#pragma once
#include "data/cassandra/Types.h"
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/Types.hpp"
#include "data/cassandra/impl/ManagedObject.hpp"
#include <cassandra.h>
#include <functional>
#include <memory>
namespace data::cassandra::detail {
struct Future : public ManagedObject<CassFuture> {

View File

@@ -20,6 +20,7 @@
#pragma once
#include <memory>
#include <stdexcept>
namespace data::cassandra::detail {

View File

@@ -17,9 +17,9 @@
*/
//==============================================================================
#include "data/cassandra/impl/Result.h"
#include "data/cassandra/impl/Result.hpp"
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/ManagedObject.hpp"
#include <cassandra.h>

View File

@@ -19,17 +19,25 @@
#pragma once
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/Tuple.h"
#include "util/Expected.h"
#include "data/cassandra/impl/ManagedObject.hpp"
#include "data/cassandra/impl/Tuple.hpp"
#include <cassandra.h>
#include <ripple/basics/base_uint.h>
#include <ripple/protocol/AccountID.h>
#include <compare>
#include <cstddef>
#include <cstdint>
#include <functional>
#include <iterator>
#include <optional>
#include <stdexcept>
#include <string>
#include <string_view>
#include <tuple>
#include <type_traits>
#include <utility>
#include <vector>
namespace data::cassandra::detail {

View File

@@ -19,10 +19,10 @@
#pragma once
#include "data/cassandra/Handle.h"
#include "data/cassandra/Types.h"
#include "util/Expected.h"
#include "util/log/Logger.h"
#include "data/cassandra/Handle.hpp"
#include "data/cassandra/Types.hpp"
#include "util/Expected.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio.hpp>

View File

@@ -19,7 +19,7 @@
#pragma once
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/ManagedObject.hpp"
#include <cassandra.h>

View File

@@ -17,9 +17,9 @@
*/
//==============================================================================
#include "data/cassandra/impl/SslContext.h"
#include "data/cassandra/impl/SslContext.hpp"
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/ManagedObject.hpp"
#include <cassandra.h>

View File

@@ -19,7 +19,7 @@
#pragma once
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/ManagedObject.hpp"
#include <cassandra.h>

View File

@@ -19,20 +19,25 @@
#pragma once
#include "data/cassandra/Types.h"
#include "data/cassandra/impl/Collection.h"
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/Tuple.h"
#include "util/Expected.h"
#include "data/cassandra/Types.hpp"
#include "data/cassandra/impl/Collection.hpp"
#include "data/cassandra/impl/ManagedObject.hpp"
#include "data/cassandra/impl/Tuple.hpp"
#include <cassandra.h>
#include <fmt/core.h>
#include <ripple/basics/base_uint.h>
#include <ripple/protocol/AccountID.h>
#include <ripple/protocol/STAccount.h>
#include <chrono>
#include <compare>
#include <iterator>
#include <cstddef>
#include <cstdint>
#include <stdexcept>
#include <string>
#include <string_view>
#include <tuple>
#include <type_traits>
#include <vector>
namespace data::cassandra::detail {

View File

@@ -17,9 +17,9 @@
*/
//==============================================================================
#include "data/cassandra/impl/Tuple.h"
#include "data/cassandra/impl/Tuple.hpp"
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/ManagedObject.hpp"
#include <cassandra.h>

View File

@@ -19,15 +19,19 @@
#pragma once
#include "data/cassandra/impl/ManagedObject.h"
#include "data/cassandra/impl/ManagedObject.hpp"
#include <cassandra.h>
#include <ripple/basics/base_uint.h>
#include <cstddef>
#include <cstdint>
#include <functional>
#include <stdexcept>
#include <string>
#include <string_view>
#include <tuple>
#include <type_traits>
namespace data::cassandra::detail {

View File

@@ -20,15 +20,19 @@
/** @file */
#pragma once
#include "util/Assert.h"
#include "util/Assert.hpp"
#include <ripple/basics/base_uint.h>
#include <chrono>
#include <condition_variable>
#include <cstddef>
#include <cstdint>
#include <memory>
#include <mutex>
#include <optional>
#include <queue>
#include <sstream>
#include <vector>
namespace etl {
/**

View File

@@ -17,13 +17,13 @@
*/
//==============================================================================
#include "etl/ETLService.h"
#include "etl/ETLService.hpp"
#include "data/BackendInterface.h"
#include "util/Assert.h"
#include "util/Constants.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "util/Assert.hpp"
#include "util/Constants.hpp"
#include "util/config/Config.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/io_context.hpp>
#include <ripple/beast/core/CurrentThreadName.h>

View File

@@ -19,27 +19,37 @@
#pragma once
#include "data/BackendInterface.h"
#include "data/LedgerCache.h"
#include "etl/LoadBalancer.h"
#include "etl/Source.h"
#include "etl/SystemState.h"
#include "etl/impl/AmendmentBlock.h"
#include "etl/impl/CacheLoader.h"
#include "etl/impl/ExtractionDataPipe.h"
#include "etl/impl/Extractor.h"
#include "etl/impl/LedgerFetcher.h"
#include "etl/impl/LedgerLoader.h"
#include "etl/impl/LedgerPublisher.h"
#include "etl/impl/Transformer.h"
#include "feed/SubscriptionManager.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "data/LedgerCache.hpp"
#include "etl/ETLHelpers.hpp"
#include "etl/ETLState.hpp"
#include "etl/LoadBalancer.hpp"
#include "etl/Source.hpp"
#include "etl/SystemState.hpp"
#include "etl/impl/AmendmentBlock.hpp"
#include "etl/impl/CacheLoader.hpp"
#include "etl/impl/ExtractionDataPipe.hpp"
#include "etl/impl/Extractor.hpp"
#include "etl/impl/LedgerFetcher.hpp"
#include "etl/impl/LedgerLoader.hpp"
#include "etl/impl/LedgerPublisher.hpp"
#include "etl/impl/Transformer.hpp"
#include "feed/SubscriptionManager.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/steady_timer.hpp>
#include <boost/json/object.hpp>
#include <grpcpp/grpcpp.h>
#include <org/xrpl/rpc/v1/get_ledger.pb.h>
#include <ripple/proto/org/xrpl/rpc/v1/xrp_ledger.grpc.pb.h>
#include <cstddef>
#include <cstdint>
#include <memory>
#include <optional>
#include <string>
#include <thread>
struct AccountTransactionsData;
struct NFTTransactionsData;

View File

@@ -17,9 +17,9 @@
*/
//==============================================================================
#include "etl/ETLState.h"
#include "etl/ETLState.hpp"
#include "rpc/JS.h"
#include "rpc/JS.hpp"
#include <boost/json/conversion.hpp>
#include <boost/json/value.hpp>

View File

@@ -19,9 +19,12 @@
#pragma once
#include "data/BackendInterface.h"
#include "data/BackendInterface.hpp"
#include <boost/json.hpp>
#include <boost/json/conversion.hpp>
#include <boost/json/value.hpp>
#include <boost/json/value_to.hpp>
#include <cstdint>
#include <optional>

View File

@@ -17,17 +17,17 @@
*/
//==============================================================================
#include "etl/LoadBalancer.h"
#include "etl/LoadBalancer.hpp"
#include "data/BackendInterface.h"
#include "etl/ETLHelpers.h"
#include "etl/ETLService.h"
#include "etl/ETLState.h"
#include "etl/ProbingSource.h"
#include "etl/Source.h"
#include "util/Assert.h"
#include "util/Random.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "etl/ETLHelpers.hpp"
#include "etl/ETLService.hpp"
#include "etl/ETLState.hpp"
#include "etl/ProbingSource.hpp"
#include "etl/Source.hpp"
#include "util/Assert.hpp"
#include "util/Random.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/spawn.hpp>

View File

@@ -19,17 +19,30 @@
#pragma once
#include "data/BackendInterface.h"
#include "etl/ETLHelpers.h"
#include "etl/ETLState.h"
#include "feed/SubscriptionManager.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "etl/ETLHelpers.hpp"
#include "etl/ETLState.hpp"
#include "feed/SubscriptionManager.hpp"
#include "util/config/Config.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio.hpp>
#include <boost/asio/io_context.hpp>
#include <boost/asio/spawn.hpp>
#include <boost/json/object.hpp>
#include <boost/json/value.hpp>
#include <grpcpp/grpcpp.h>
#include <org/xrpl/rpc/v1/get_ledger.pb.h>
#include <org/xrpl/rpc/v1/ledger.pb.h>
#include <ripple/proto/org/xrpl/rpc/v1/xrp_ledger.grpc.pb.h>
#include <cstdint>
#include <memory>
#include <optional>
#include <string>
#include <utility>
#include <vector>
namespace etl {
class Source;
class ProbingSource;
@@ -99,26 +112,6 @@ public:
std::shared_ptr<NetworkValidatedLedgers> validatedLedgers
);
/**
* @brief A factory function for the ETL source.
*
* @param config The configuration to use
* @param ioc The io_context to run on
* @param backend BackendInterface implementation
* @param subscriptions Subscription manager
* @param validatedLedgers The network validated ledgers datastructure
* @param balancer The load balancer
*/
static std::unique_ptr<Source>
make_Source(
util::Config const& config,
boost::asio::io_context& ioc,
std::shared_ptr<BackendInterface> backend,
std::shared_ptr<feed::SubscriptionManager> subscriptions,
std::shared_ptr<NetworkValidatedLedgers> validatedLedgers,
LoadBalancer& balancer
);
~LoadBalancer();
/**
@@ -187,6 +180,26 @@ public:
getETLState() noexcept;
private:
/**
* @brief A factory function for the ETL source.
*
* @param config The configuration to use
* @param ioc The io_context to run on
* @param backend BackendInterface implementation
* @param subscriptions Subscription manager
* @param validatedLedgers The network validated ledgers datastructure
* @param balancer The load balancer
*/
static std::unique_ptr<Source>
make_Source(
util::Config const& config,
boost::asio::io_context& ioc,
std::shared_ptr<BackendInterface> backend,
std::shared_ptr<feed::SubscriptionManager> subscriptions,
std::shared_ptr<NetworkValidatedLedgers> validatedLedgers,
LoadBalancer& balancer
);
/**
* @brief Execute a function on a randomly selected source.
*

View File

@@ -17,7 +17,7 @@
*/
//==============================================================================
#include "data/DBHelpers.h"
#include "data/DBHelpers.hpp"
#include <fmt/core.h>
#include <ripple/basics/base_uint.h>
@@ -358,4 +358,4 @@ getNFTDataFromObj(std::uint32_t const seq, std::string const& key, std::string c
return nfts;
}
} // namespace etl
} // namespace etl

View File

@@ -20,11 +20,17 @@
/** @file */
#pragma once
#include "data/DBHelpers.h"
#include "data/DBHelpers.hpp"
#include <ripple/protocol/STTx.h>
#include <ripple/protocol/TxMeta.h>
#include <cstdint>
#include <optional>
#include <string>
#include <utility>
#include <vector>
namespace etl {
/**
@@ -48,4 +54,4 @@ getNFTDataFromTx(ripple::TxMeta const& txMeta, ripple::STTx const& sttx);
std::vector<NFTsData>
getNFTDataFromObj(std::uint32_t seq, std::string const& key, std::string const& blob);
} // namespace etl
} // namespace etl

View File

@@ -17,15 +17,15 @@
*/
//==============================================================================
#include "etl/ProbingSource.h"
#include "etl/ProbingSource.hpp"
#include "data/BackendInterface.h"
#include "etl/ETLHelpers.h"
#include "etl/LoadBalancer.h"
#include "etl/Source.h"
#include "feed/SubscriptionManager.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "etl/ETLHelpers.hpp"
#include "etl/LoadBalancer.hpp"
#include "etl/Source.hpp"
#include "feed/SubscriptionManager.hpp"
#include "util/config/Config.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/spawn.hpp>

View File

@@ -19,17 +19,33 @@
#pragma once
#include "etl/Source.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "etl/ETLHelpers.hpp"
#include "etl/LoadBalancer.hpp"
#include "etl/Source.hpp"
#include "util/config/Config.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio.hpp>
#include <boost/asio/io_context.hpp>
#include <boost/asio/spawn.hpp>
#include <boost/asio/ssl/context.hpp>
#include <boost/beast/core.hpp>
#include <boost/beast/core/string.hpp>
#include <boost/beast/ssl.hpp>
#include <boost/beast/websocket.hpp>
#include <boost/json/object.hpp>
#include <boost/uuid/uuid.hpp>
#include <grpcpp/support/status.h>
#include <org/xrpl/rpc/v1/get_ledger.pb.h>
#include <cstdint>
#include <memory>
#include <mutex>
#include <optional>
#include <string>
#include <utility>
#include <vector>
namespace etl {

View File

@@ -17,9 +17,9 @@
*/
//==============================================================================
#include "etl/Source.h"
#include "etl/Source.hpp"
#include "util/log/Logger.h"
#include "util/log/Logger.hpp"
#include <boost/asio/ip/tcp.hpp>
#include <boost/asio/post.hpp>

View File

@@ -19,28 +19,77 @@
#pragma once
#include "data/BackendInterface.h"
#include "etl/ETLHelpers.h"
#include "etl/LoadBalancer.h"
#include "etl/impl/AsyncData.h"
#include "etl/impl/ForwardCache.h"
#include "feed/SubscriptionManager.h"
#include "util/Assert.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "etl/ETLHelpers.hpp"
#include "etl/LoadBalancer.hpp"
#include "etl/impl/AsyncData.hpp"
#include "etl/impl/ForwardCache.hpp"
#include "feed/SubscriptionManager.hpp"
#include "util/Assert.hpp"
#include "util/config/Config.hpp"
#include "util/log/Logger.hpp"
#include <boost/algorithm/string.hpp>
#include <boost/algorithm/string/classification.hpp>
#include <boost/algorithm/string/split.hpp>
#include <boost/asio.hpp>
#include <boost/asio/associated_executor.hpp>
#include <boost/asio/buffer.hpp>
#include <boost/asio/error.hpp>
#include <boost/asio/io_context.hpp>
#include <boost/asio/ip/address.hpp>
#include <boost/asio/ip/tcp.hpp>
#include <boost/asio/spawn.hpp>
#include <boost/asio/ssl/context.hpp>
#include <boost/asio/ssl/error.hpp>
#include <boost/asio/steady_timer.hpp>
#include <boost/asio/strand.hpp>
#include <boost/beast/core.hpp>
#include <boost/beast/core/buffers_to_string.hpp>
#include <boost/beast/core/error.hpp>
#include <boost/beast/core/flat_buffer.hpp>
#include <boost/beast/core/string.hpp>
#include <boost/beast/core/tcp_stream.hpp>
#include <boost/beast/http/field.hpp>
#include <boost/beast/ssl.hpp>
#include <boost/beast/ssl/ssl_stream.hpp>
#include <boost/beast/version.hpp>
#include <boost/beast/websocket.hpp>
#include <boost/beast/websocket/rfc6455.hpp>
#include <boost/beast/websocket/stream.hpp>
#include <boost/beast/websocket/stream_base.hpp>
#include <boost/json/object.hpp>
#include <boost/json/parse.hpp>
#include <boost/json/serialize.hpp>
#include <boost/lexical_cast.hpp>
#include <boost/uuid/random_generator.hpp>
#include <boost/uuid/uuid.hpp>
#include <boost/uuid/uuid_generators.hpp>
#include <grpcpp/client_context.h>
#include <grpcpp/grpcpp.h>
#include <grpcpp/security/credentials.h>
#include <grpcpp/support/channel_arguments.h>
#include <grpcpp/support/status.h>
#include <openssl/err.h>
#include <org/xrpl/rpc/v1/get_ledger.pb.h>
#include <ripple/basics/base_uint.h>
#include <ripple/proto/org/xrpl/rpc/v1/xrp_ledger.grpc.pb.h>
#include <algorithm>
#include <atomic>
#include <chrono>
#include <cmath>
#include <cstddef>
#include <cstdint>
#include <exception>
#include <functional>
#include <memory>
#include <mutex>
#include <optional>
#include <sstream>
#include <string>
#include <utility>
#include <vector>
namespace feed {
class SubscriptionManager;
@@ -314,7 +363,7 @@ public:
boost::json::object response;
namespace beast = boost::beast;
namespace http = boost::beast::http;
namespace http = beast::http;
namespace websocket = beast::websocket;
namespace net = boost::asio;
using tcp = boost::asio::ip::tcp;

View File

@@ -19,8 +19,8 @@
#pragma once
#include "etl/SystemState.h"
#include "util/log/Logger.h"
#include "etl/SystemState.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/post.hpp>

View File

@@ -19,14 +19,27 @@
#pragma once
#include "data/BackendInterface.h"
#include "etl/NFTHelpers.h"
#include "util/Assert.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "data/Types.hpp"
#include "etl/NFTHelpers.hpp"
#include "util/Assert.hpp"
#include "util/log/Logger.hpp"
#include <grpcpp/client_context.h>
#include <grpcpp/grpcpp.h>
#include <grpcpp/support/status.h>
#include <org/xrpl/rpc/v1/get_ledger_data.pb.h>
#include <ripple/basics/base_uint.h>
#include <ripple/basics/strHex.h>
#include <ripple/proto/org/xrpl/rpc/v1/xrp_ledger.grpc.pb.h>
#include <cstdint>
#include <memory>
#include <optional>
#include <string>
#include <utility>
#include <vector>
namespace etl::detail {
class AsyncCallData {

View File

@@ -19,20 +19,48 @@
#pragma once
#include "data/BackendInterface.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "data/Types.hpp"
#include "util/Assert.hpp"
#include "util/log/Logger.hpp"
#include <boost/algorithm/hex.hpp>
#include <boost/algorithm/string.hpp>
#include <boost/algorithm/string/predicate.hpp>
#include <boost/asio/io_context.hpp>
#include <boost/asio/ip/tcp.hpp>
#include <boost/asio/spawn.hpp>
#include <boost/beast/core.hpp>
#include <boost/beast/core/buffers_to_string.hpp>
#include <boost/beast/core/error.hpp>
#include <boost/beast/core/flat_buffer.hpp>
#include <boost/beast/core/string.hpp>
#include <boost/beast/core/tcp_stream.hpp>
#include <boost/beast/websocket.hpp>
#include <boost/beast/websocket/stream.hpp>
#include <boost/json/object.hpp>
#include <boost/json/parse.hpp>
#include <boost/json/value.hpp>
#include <grpcpp/grpcpp.h>
#include <ripple/basics/base_uint.h>
#include <ripple/basics/strHex.h>
#include <ripple/proto/org/xrpl/rpc/v1/xrp_ledger.grpc.pb.h>
#include <atomic>
#include <chrono>
#include <mutex>
#include <cstddef>
#include <cstdint>
#include <exception>
#include <functional>
#include <iterator>
#include <memory>
#include <optional>
#include <random>
#include <sstream>
#include <string>
#include <thread>
#include <utility>
#include <vector>
namespace etl::detail {

View File

@@ -19,10 +19,13 @@
#pragma once
#include "etl/ETLHelpers.h"
#include "util/log/Logger.h"
#include "etl/ETLHelpers.hpp"
#include "util/log/Logger.hpp"
#include <cstddef>
#include <cstdint>
#include <memory>
#include <optional>
#include <vector>
namespace etl::detail {

View File

@@ -19,15 +19,18 @@
#pragma once
#include "etl/SystemState.h"
#include "util/Assert.h"
#include "util/Profiler.h"
#include "util/log/Logger.h"
#include "etl/SystemState.hpp"
#include "util/Assert.hpp"
#include "util/Profiler.hpp"
#include "util/log/Logger.hpp"
#include <ripple/beast/core/CurrentThreadName.h>
#include <chrono>
#include <mutex>
#include <cstdint>
#include <functional>
#include <memory>
#include <optional>
#include <thread>
#include <utility>

View File

@@ -17,11 +17,11 @@
*/
//==============================================================================
#include "etl/impl/ForwardCache.h"
#include "etl/impl/ForwardCache.hpp"
#include "etl/Source.h"
#include "rpc/RPCHelpers.h"
#include "util/log/Logger.h"
#include "etl/Source.hpp"
#include "rpc/RPCHelpers.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/spawn.hpp>
#include <boost/json/object.hpp>

View File

@@ -19,16 +19,19 @@
#pragma once
#include "data/BackendInterface.h"
#include "etl/ETLHelpers.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "util/config/Config.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio.hpp>
#include <boost/asio/io_context.hpp>
#include <boost/asio/strand.hpp>
#include <boost/json.hpp>
#include <boost/json/object.hpp>
#include <atomic>
#include <mutex>
#include <cstdint>
#include <optional>
#include <shared_mutex>
#include <string>
#include <unordered_map>
namespace etl {

View File

@@ -19,14 +19,14 @@
#pragma once
#include "data/BackendInterface.h"
#include "etl/Source.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "util/log/Logger.hpp"
#include <grpcpp/grpcpp.h>
#include <ripple/proto/org/xrpl/rpc/v1/xrp_ledger.grpc.pb.h>
#include <optional>
#include <cstdint>
#include <memory>
#include <utility>
namespace etl::detail {

View File

@@ -19,19 +19,34 @@
#pragma once
#include "data/BackendInterface.h"
#include "etl/NFTHelpers.h"
#include "etl/SystemState.h"
#include "etl/impl/LedgerFetcher.h"
#include "util/Assert.h"
#include "util/LedgerUtils.h"
#include "util/Profiler.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "data/DBHelpers.hpp"
#include "data/Types.hpp"
#include "etl/NFTHelpers.hpp"
#include "etl/SystemState.hpp"
#include "etl/impl/LedgerFetcher.hpp"
#include "util/Assert.hpp"
#include "util/LedgerUtils.hpp"
#include "util/Profiler.hpp"
#include "util/log/Logger.hpp"
#include <ripple/basics/base_uint.h>
#include <ripple/basics/strHex.h>
#include <ripple/beast/core/CurrentThreadName.h>
#include <ripple/protocol/LedgerHeader.h>
#include <ripple/protocol/STTx.h>
#include <ripple/protocol/Serializer.h>
#include <ripple/protocol/TxMeta.h>
#include <chrono>
#include <cstddef>
#include <cstdint>
#include <functional>
#include <memory>
#include <optional>
#include <string>
#include <utility>
#include <vector>
/**
* @brief Account transactions, NFT transactions and NFT data bundled togeher.

View File

@@ -19,17 +19,34 @@
#pragma once
#include "data/BackendInterface.h"
#include "etl/SystemState.h"
#include "feed/SubscriptionManager.h"
#include "util/Assert.h"
#include "util/LedgerUtils.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "data/DBHelpers.hpp"
#include "data/Types.hpp"
#include "etl/SystemState.hpp"
#include "util/Assert.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/strand.hpp>
#include <ripple/basics/chrono.h>
#include <ripple/protocol/Fees.h>
#include <ripple/protocol/LedgerHeader.h>
#include <ripple/protocol/SField.h>
#include <ripple/protocol/STObject.h>
#include <ripple/protocol/Serializer.h>
#include <chrono>
#include <cstddef>
#include <cstdint>
#include <functional>
#include <memory>
#include <mutex>
#include <optional>
#include <shared_mutex>
#include <string>
#include <thread>
#include <utility>
#include <vector>
namespace etl::detail {

View File

@@ -19,23 +19,35 @@
#pragma once
#include "data/BackendInterface.h"
#include "etl/SystemState.h"
#include "etl/impl/AmendmentBlock.h"
#include "etl/impl/LedgerLoader.h"
#include "util/Assert.h"
#include "util/LedgerUtils.h"
#include "util/Profiler.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "data/DBHelpers.hpp"
#include "data/Types.hpp"
#include "etl/SystemState.hpp"
#include "etl/impl/AmendmentBlock.hpp"
#include "etl/impl/LedgerLoader.hpp"
#include "util/Assert.hpp"
#include "util/LedgerUtils.hpp"
#include "util/Profiler.hpp"
#include "util/log/Logger.hpp"
#include <grpcpp/grpcpp.h>
#include <ripple/basics/base_uint.h>
#include <ripple/basics/strHex.h>
#include <ripple/beast/core/CurrentThreadName.h>
#include <ripple/proto/org/xrpl/rpc/v1/xrp_ledger.grpc.pb.h>
#include <ripple/protocol/LedgerHeader.h>
#include <chrono>
#include <cstdint>
#include <functional>
#include <memory>
#include <optional>
#include <set>
#include <stdexcept>
#include <string>
#include <thread>
#include <utility>
#include <vector>
namespace etl::detail {

View File

@@ -17,10 +17,10 @@
*/
//==============================================================================
#include "feed/SubscriptionManager.h"
#include "feed/SubscriptionManager.hpp"
#include "data/Types.h"
#include "feed/Types.h"
#include "data/Types.hpp"
#include "feed/Types.hpp"
#include <boost/asio/spawn.hpp>
#include <boost/json/object.hpp>

View File

@@ -19,15 +19,15 @@
#pragma once
#include "data/BackendInterface.h"
#include "data/Types.h"
#include "feed/Types.h"
#include "feed/impl/BookChangesFeed.h"
#include "feed/impl/ForwardFeed.h"
#include "feed/impl/LedgerFeed.h"
#include "feed/impl/ProposedTransactionFeed.h"
#include "feed/impl/TransactionFeed.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "data/Types.hpp"
#include "feed/Types.hpp"
#include "feed/impl/BookChangesFeed.hpp"
#include "feed/impl/ForwardFeed.hpp"
#include "feed/impl/LedgerFeed.hpp"
#include "feed/impl/ProposedTransactionFeed.hpp"
#include "feed/impl/TransactionFeed.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/executor_work_guard.hpp>
#include <boost/asio/io_context.hpp>

View File

@@ -19,7 +19,7 @@
#pragma once
#include "web/interface/ConnectionBase.h"
#include "web/interface/ConnectionBase.hpp"
#include <memory>

View File

@@ -19,9 +19,9 @@
#pragma once
#include "data/Types.h"
#include "feed/impl/SingleFeedBase.h"
#include "rpc/BookChangesHelper.h"
#include "data/Types.hpp"
#include "feed/impl/SingleFeedBase.hpp"
#include "rpc/BookChangesHelper.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/json/serialize.hpp>

View File

@@ -19,7 +19,7 @@
#pragma once
#include "feed/impl/SingleFeedBase.h"
#include "feed/impl/SingleFeedBase.hpp"
#include <boost/json/object.hpp>
#include <boost/json/serialize.hpp>

View File

@@ -17,13 +17,13 @@
*/
//==============================================================================
#include "feed/impl/LedgerFeed.h"
#include "feed/impl/LedgerFeed.hpp"
#include "data/BackendInterface.h"
#include "feed/Types.h"
#include "feed/impl/SingleFeedBase.h"
#include "rpc/RPCHelpers.h"
#include "util/Assert.h"
#include "data/BackendInterface.hpp"
#include "feed/Types.hpp"
#include "feed/impl/SingleFeedBase.hpp"
#include "rpc/RPCHelpers.hpp"
#include "util/Assert.hpp"
#include <boost/asio/spawn.hpp>
#include <boost/json/object.hpp>

View File

@@ -19,9 +19,9 @@
#pragma once
#include "data/BackendInterface.h"
#include "feed/Types.h"
#include "feed/impl/SingleFeedBase.h"
#include "data/BackendInterface.hpp"
#include "feed/Types.hpp"
#include "feed/impl/SingleFeedBase.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/spawn.hpp>

View File

@@ -17,11 +17,11 @@
*/
//==============================================================================
#include "feed/impl/ProposedTransactionFeed.h"
#include "feed/impl/ProposedTransactionFeed.hpp"
#include "feed/Types.h"
#include "rpc/RPCHelpers.h"
#include "util/log/Logger.h"
#include "feed/Types.hpp"
#include "rpc/RPCHelpers.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/post.hpp>
#include <boost/json/object.hpp>

View File

@@ -19,12 +19,12 @@
#pragma once
#include "feed/Types.h"
#include "feed/impl/TrackableSignal.h"
#include "feed/impl/TrackableSignalMap.h"
#include "feed/impl/Util.h"
#include "util/log/Logger.h"
#include "util/prometheus/Gauge.h"
#include "feed/Types.hpp"
#include "feed/impl/TrackableSignal.hpp"
#include "feed/impl/TrackableSignalMap.hpp"
#include "feed/impl/Util.hpp"
#include "util/log/Logger.hpp"
#include "util/prometheus/Gauge.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/strand.hpp>

View File

@@ -17,12 +17,12 @@
*/
//==============================================================================
#include "feed/impl/SingleFeedBase.h"
#include "feed/impl/SingleFeedBase.hpp"
#include "feed/Types.h"
#include "feed/impl/TrackableSignal.h"
#include "feed/impl/Util.h"
#include "util/log/Logger.h"
#include "feed/Types.hpp"
#include "feed/impl/TrackableSignal.hpp"
#include "feed/impl/Util.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/post.hpp>

View File

@@ -19,10 +19,10 @@
#pragma once
#include "feed/Types.h"
#include "feed/impl/TrackableSignal.h"
#include "util/log/Logger.h"
#include "util/prometheus/Gauge.h"
#include "feed/Types.hpp"
#include "feed/impl/TrackableSignal.hpp"
#include "util/log/Logger.hpp"
#include "util/prometheus/Gauge.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/strand.hpp>

View File

@@ -19,7 +19,7 @@
#pragma once
#include "feed/impl/TrackableSignal.h"
#include "feed/impl/TrackableSignal.hpp"
#include <boost/signals2.hpp>

View File

@@ -17,14 +17,14 @@
*/
//==============================================================================
#include "feed/impl/TransactionFeed.h"
#include "feed/impl/TransactionFeed.hpp"
#include "data/BackendInterface.h"
#include "data/Types.h"
#include "feed/Types.h"
#include "rpc/JS.h"
#include "rpc/RPCHelpers.h"
#include "util/log/Logger.h"
#include "data/BackendInterface.hpp"
#include "data/Types.hpp"
#include "feed/Types.hpp"
#include "rpc/JS.hpp"
#include "rpc/RPCHelpers.hpp"
#include "util/log/Logger.hpp"
#include <boost/asio/post.hpp>
#include <boost/asio/spawn.hpp>

View File

@@ -19,14 +19,14 @@
#pragma once
#include "data/BackendInterface.h"
#include "data/Types.h"
#include "feed/Types.h"
#include "feed/impl/TrackableSignal.h"
#include "feed/impl/TrackableSignalMap.h"
#include "feed/impl/Util.h"
#include "util/log/Logger.h"
#include "util/prometheus/Gauge.h"
#include "data/BackendInterface.hpp"
#include "data/Types.hpp"
#include "feed/Types.hpp"
#include "feed/impl/TrackableSignal.hpp"
#include "feed/impl/TrackableSignalMap.hpp"
#include "feed/impl/Util.hpp"
#include "util/log/Logger.hpp"
#include "util/prometheus/Gauge.hpp"
#include <boost/asio/io_context.hpp>
#include <boost/asio/strand.hpp>

View File

@@ -19,9 +19,9 @@
#pragma once
#include "util/prometheus/Gauge.h"
#include "util/prometheus/Label.h"
#include "util/prometheus/Prometheus.h"
#include "util/prometheus/Gauge.hpp"
#include "util/prometheus/Label.hpp"
#include "util/prometheus/Prometheus.hpp"
#include <fmt/core.h>

View File

@@ -17,24 +17,24 @@
*/
//==============================================================================
#include "data/BackendFactory.h"
#include "etl/ETLHelpers.h"
#include "etl/ETLService.h"
#include "feed/SubscriptionManager.h"
#include "main/Build.h"
#include "rpc/Counters.h"
#include "rpc/RPCEngine.h"
#include "rpc/WorkQueue.h"
#include "rpc/common/impl/HandlerProvider.h"
#include "util/TerminationHandler.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "util/prometheus/Prometheus.h"
#include "web/DOSGuard.h"
#include "web/IntervalSweepHandler.h"
#include "web/RPCServerHandler.h"
#include "web/Server.h"
#include "web/WhitelistHandler.h"
#include "data/BackendFactory.hpp"
#include "etl/ETLHelpers.hpp"
#include "etl/ETLService.hpp"
#include "feed/SubscriptionManager.hpp"
#include "main/Build.hpp"
#include "rpc/Counters.hpp"
#include "rpc/RPCEngine.hpp"
#include "rpc/WorkQueue.hpp"
#include "rpc/common/impl/HandlerProvider.hpp"
#include "util/TerminationHandler.hpp"
#include "util/config/Config.hpp"
#include "util/log/Logger.hpp"
#include "util/prometheus/Prometheus.hpp"
#include "web/DOSGuard.hpp"
#include "web/IntervalSweepHandler.hpp"
#include "web/RPCServerHandler.hpp"
#include "web/Server.hpp"
#include "web/WhitelistHandler.hpp"
#include <boost/asio/buffer.hpp>
#include <boost/asio/io_context.hpp>

View File

@@ -17,10 +17,10 @@
*/
//==============================================================================
#include "rpc/AMMHelpers.h"
#include "rpc/AMMHelpers.hpp"
#include "data/BackendInterface.h"
#include "rpc/RPCHelpers.h"
#include "data/BackendInterface.hpp"
#include "rpc/RPCHelpers.hpp"
#include <boost/asio/spawn.hpp>
#include <ripple/protocol/AMMCore.h>

View File

@@ -19,8 +19,17 @@
#pragma once
#include "data/BackendInterface.h"
#include "rpc/RPCHelpers.h"
#include "data/BackendInterface.hpp"
#include <boost/asio/spawn.hpp>
#include <ripple/protocol/AccountID.h>
#include <ripple/protocol/Issue.h>
#include <ripple/protocol/STAmount.h>
#include <ripple/protocol/STLedgerEntry.h>
#include <ripple/protocol/UintTypes.h>
#include <cstdint>
#include <utility>
namespace rpc {

View File

@@ -19,9 +19,12 @@
#pragma once
#include <ripple/basics/Slice.h>
#include <ripple/basics/base_uint.h>
#include <ripple/protocol/digest.h>
#include <string_view>
namespace rpc {
#define REGISTER_AMENDMENT(name) inline static const ripple::uint256 name = GetAmendmentId(#name);

View File

@@ -20,9 +20,35 @@
/** @file */
#pragma once
#include "rpc/RPCHelpers.h"
#include "data/Types.hpp"
#include "rpc/JS.hpp"
#include "rpc/RPCHelpers.hpp"
#include <boost/json/conversion.hpp>
#include <boost/json/object.hpp>
#include <boost/json/value.hpp>
#include <ripple/basics/IOUAmount.h>
#include <ripple/basics/XRPAmount.h>
#include <ripple/beast/utility/Zero.h>
#include <ripple/protocol/Issue.h>
#include <ripple/protocol/LedgerFormats.h>
#include <ripple/protocol/LedgerHeader.h>
#include <ripple/protocol/SField.h>
#include <ripple/protocol/STAmount.h>
#include <ripple/protocol/STObject.h>
#include <ripple/protocol/STTx.h>
#include <ripple/protocol/TxFormats.h>
#include <ripple/protocol/jss.h>
#include <algorithm>
#include <cstdint>
#include <iterator>
#include <map>
#include <memory>
#include <optional>
#include <set>
#include <string>
#include <vector>
namespace rpc {

View File

@@ -17,12 +17,12 @@
*/
//==============================================================================
#include "rpc/Counters.h"
#include "rpc/Counters.hpp"
#include "rpc/JS.h"
#include "rpc/WorkQueue.h"
#include "util/prometheus/Label.h"
#include "util/prometheus/Prometheus.h"
#include "rpc/JS.hpp"
#include "rpc/WorkQueue.hpp"
#include "util/prometheus/Label.hpp"
#include "util/prometheus/Prometheus.hpp"
#include <boost/json/object.hpp>
#include <fmt/core.h>

View File

@@ -19,12 +19,14 @@
#pragma once
#include "rpc/WorkQueue.h"
#include "util/prometheus/Prometheus.h"
#include "rpc/WorkQueue.hpp"
#include "util/prometheus/Counter.hpp"
#include <boost/json.hpp>
#include <boost/json/object.hpp>
#include <chrono>
#include <functional>
#include <mutex>
#include <string>
#include <unordered_map>

View File

@@ -17,9 +17,9 @@
*/
//==============================================================================
#include "rpc/Errors.h"
#include "rpc/Errors.hpp"
#include "rpc/JS.h"
#include "rpc/JS.hpp"
#include <boost/json/object.hpp>
#include <ripple/protocol/ErrorCodes.h>

View File

@@ -23,6 +23,7 @@
#include <boost/json/object.hpp>
#include <ripple/protocol/ErrorCodes.h>
#include <exception>
#include <optional>
#include <string>
#include <string_view>

View File

@@ -17,15 +17,15 @@
*/
//==============================================================================
#include "rpc/Factories.h"
#include "rpc/Factories.hpp"
#include "data/Types.h"
#include "rpc/Errors.h"
#include "rpc/common/APIVersion.h"
#include "rpc/common/Types.h"
#include "util/Expected.h"
#include "util/Taggable.h"
#include "web/Context.h"
#include "data/Types.hpp"
#include "rpc/Errors.hpp"
#include "rpc/common/APIVersion.hpp"
#include "rpc/common/Types.hpp"
#include "util/Expected.hpp"
#include "util/Taggable.hpp"
#include "web/Context.hpp"
#include <boost/asio/spawn.hpp>
#include <boost/json/array.hpp>

View File

@@ -19,17 +19,20 @@
#pragma once
#include "data/BackendInterface.h"
#include "rpc/Errors.h"
#include "rpc/common/APIVersion.h"
#include "util/Expected.h"
#include "web/Context.h"
#include "web/interface/ConnectionBase.h"
#include "data/Types.hpp"
#include "rpc/Errors.hpp"
#include "rpc/common/APIVersion.hpp"
#include "util/Expected.hpp"
#include "util/Taggable.hpp"
#include "web/Context.hpp"
#include "web/interface/ConnectionBase.hpp"
#include <boost/asio/spawn.hpp>
#include <boost/json.hpp>
#include <boost/json/object.hpp>
#include <optional>
#include <functional>
#include <memory>
#include <string>
/*

View File

@@ -19,7 +19,7 @@
#pragma once
#include "util/JsonUtils.h"
#include "util/JsonUtils.hpp"
#include <ripple/protocol/jss.h>

View File

@@ -19,28 +19,28 @@
#pragma once
#include "data/BackendInterface.h"
#include "etl/Source.h"
#include "rpc/Counters.h"
#include "rpc/Errors.h"
#include "rpc/RPCHelpers.h"
#include "rpc/common/AnyHandler.h"
#include "rpc/common/Types.h"
#include "rpc/common/impl/ForwardingProxy.h"
#include "util/Taggable.h"
#include "util/config/Config.h"
#include "util/log/Logger.h"
#include "web/Context.h"
#include "web/DOSGuard.h"
#include "data/BackendInterface.hpp"
#include "rpc/Counters.hpp"
#include "rpc/Errors.hpp"
#include "rpc/WorkQueue.hpp"
#include "rpc/common/HandlerProvider.hpp"
#include "rpc/common/Types.hpp"
#include "rpc/common/impl/ForwardingProxy.hpp"
#include "util/log/Logger.hpp"
#include "web/Context.hpp"
#include "web/DOSGuard.hpp"
#include <boost/asio/spawn.hpp>
#include <boost/json.hpp>
#include <fmt/core.h>
#include <ripple/protocol/ErrorCodes.h>
#include <chrono>
#include <exception>
#include <functional>
#include <memory>
#include <optional>
#include <string>
#include <unordered_map>
#include <variant>
// forward declarations
namespace feed {
@@ -64,7 +64,6 @@ class RPCEngine {
util::Logger log_{"RPC"};
std::shared_ptr<BackendInterface> backend_;
std::shared_ptr<etl::LoadBalancer> balancer_;
std::reference_wrapper<web::DOSGuard const> dosGuard_;
std::reference_wrapper<WorkQueue> workQueue_;
std::reference_wrapper<Counters> counters_;
@@ -83,7 +82,6 @@ public:
std::shared_ptr<HandlerProvider const> const& handlerProvider
)
: backend_{backend}
, balancer_{balancer}
, dosGuard_{std::cref(dosGuard)}
, workQueue_{std::ref(workQueue)}
, counters_{std::ref(counters)}

Some files were not shown because too many files have changed in this diff Show More