Add Reporting Mode

* Add a new operating mode to rippled called reporting mode
* Add ETL mechanism for a reporting node to extract data from a p2p node
* Add new gRPC methods to faciliate ETL
* Use Postgres in place of SQLite in reporting mode
* Add Cassandra as a nodestore option
* Update logic of RPC handlers when running in reporting mode
* Add ability to forward RPCs to a p2p node
This commit is contained in:
CJ Cobb
2020-09-15 16:54:43 -04:00
committed by manojsdoshi
parent b0a39c5f86
commit 27543170d0
136 changed files with 9943 additions and 755 deletions

View File

@@ -284,6 +284,11 @@ Config::setup(
// Update default values
load();
if (exists("reporting"))
{
RUN_REPORTING = true;
RUN_STANDALONE = true;
}
{
// load() may have set a new value for the dataDir
std::string const dbPath(legacy("database_path"));
@@ -309,6 +314,10 @@ Config::setup(
if (RUN_STANDALONE)
LEDGER_HISTORY = 0;
std::string ledgerTxDbType;
Section ledgerTxTablesSection = section("ledger_tx_tables");
get_if_exists(ledgerTxTablesSection, "use_tx_tables", USE_TX_TABLES);
}
void