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

@@ -1939,7 +1939,7 @@ public:
env.app().config(),
feeTrack,
env.app().getTxQ(),
ledger);
env.app());
BEAST_EXPECT(!RPC::contains_error(result));
BEAST_EXPECT(
@@ -1960,7 +1960,7 @@ public:
env.app().config(),
feeTrack,
env.app().getTxQ(),
ledger);
env.app());
BEAST_EXPECT(!RPC::contains_error(result));
BEAST_EXPECT(
@@ -1979,7 +1979,7 @@ public:
env.app().config(),
feeTrack,
env.app().getTxQ(),
ledger);
env.app());
BEAST_EXPECT(RPC::contains_error(result));
BEAST_EXPECT(!req[jss::tx_json].isMember(jss::Fee));
@@ -2000,7 +2000,7 @@ public:
env.app().config(),
feeTrack,
env.app().getTxQ(),
ledger);
env.app());
BEAST_EXPECT(RPC::contains_error(result));
BEAST_EXPECT(!req[jss::tx_json].isMember(jss::Fee));
@@ -2019,7 +2019,7 @@ public:
env.app().config(),
feeTrack,
env.app().getTxQ(),
ledger);
env.app());
BEAST_EXPECT(RPC::contains_error(result));
BEAST_EXPECT(!req[jss::tx_json].isMember(jss::Fee));
@@ -2038,7 +2038,7 @@ public:
env.app().config(),
feeTrack,
env.app().getTxQ(),
ledger);
env.app());
BEAST_EXPECT(RPC::contains_error(result));
BEAST_EXPECT(!req[jss::tx_json].isMember(jss::Fee));
@@ -2073,7 +2073,7 @@ public:
env.app().config(),
feeTrackOuter,
env.app().getTxQ(),
env.current());
env.app());
BEAST_EXPECT(!RPC::contains_error(result));
BEAST_EXPECT(
@@ -2097,7 +2097,7 @@ public:
env.app().config(),
feeTrackOuter,
env.app().getTxQ(),
env.current());
env.app());
BEAST_EXPECT(!RPC::contains_error(result));
BEAST_EXPECT(
@@ -2127,7 +2127,7 @@ public:
env.app().config(),
feeTrackOuter,
env.app().getTxQ(),
env.current());
env.app());
BEAST_EXPECT(!RPC::contains_error(result));
BEAST_EXPECT(
@@ -2151,7 +2151,7 @@ public:
env.app().config(),
feeTrackOuter,
env.app().getTxQ(),
env.current());
env.app());
BEAST_EXPECT(RPC::contains_error(result));
BEAST_EXPECT(!req[jss::tx_json].isMember(jss::Fee));
@@ -2174,7 +2174,7 @@ public:
env.app().config(),
feeTrackOuter,
env.app().getTxQ(),
env.current());
env.app());
BEAST_EXPECT(RPC::contains_error(result));
BEAST_EXPECT(!req[jss::tx_json].isMember(jss::Fee));
@@ -2197,7 +2197,7 @@ public:
env.app().config(),
feeTrackOuter,
env.app().getTxQ(),
env.current());
env.app());
BEAST_EXPECT(!RPC::contains_error(result));
BEAST_EXPECT(
@@ -2221,7 +2221,7 @@ public:
env.app().config(),
feeTrackOuter,
env.app().getTxQ(),
env.current());
env.app());
BEAST_EXPECT(RPC::contains_error(result));
}
@@ -2242,7 +2242,7 @@ public:
env.app().config(),
feeTrackOuter,
env.app().getTxQ(),
env.current());
env.app());
BEAST_EXPECT(RPC::contains_error(result));
}
@@ -2264,7 +2264,7 @@ public:
env.app().config(),
feeTrackOuter,
env.app().getTxQ(),
env.current());
env.app());
BEAST_EXPECT(RPC::contains_error(result));
}