Save raw inputs alongside the ledger (#167)

* Saving raw inputs in the ledger.
* Store full history in separate folder.

* Moved full history fb structs to a seperate fbs file

* Removed raw_inputs from the proposal

* Fixed code comments

* Saving raw user input string

* Code refactoring

* Resolved PR comments
This commit is contained in:
Chalith Desaman
2020-11-30 15:42:20 +05:30
committed by GitHub
parent e90e9bb5dd
commit 2f5d95ae7a
17 changed files with 410 additions and 144 deletions

View File

@@ -79,6 +79,7 @@ namespace conf
// Recursivly create contract directories.
util::create_dir_tree_recursive(ctx.config_dir);
util::create_dir_tree_recursive(ctx.hist_dir);
util::create_dir_tree_recursive(ctx.full_hist_dir);
util::create_dir_tree_recursive(ctx.log_dir);
util::create_dir_tree_recursive(ctx.state_dir);
@@ -100,6 +101,7 @@ namespace conf
cfg.msgforwarding = false;
cfg.dynamicpeerdiscovery = false;
cfg.fullhistory = false;
#ifndef NDEBUG
cfg.loglevel_type = conf::LOG_SEVERITY::DEBUG;
@@ -158,6 +160,7 @@ namespace conf
ctx.tls_key_file = ctx.config_dir + "/tlskey.pem";
ctx.tls_cert_file = ctx.config_dir + "/tlscert.pem";
ctx.hist_dir = basedir + "/hist";
ctx.full_hist_dir = basedir + "/fullhist";
ctx.state_dir = basedir + "/state";
ctx.state_rw_dir = ctx.state_dir + "/rw";
ctx.state_serve_dir = ctx.state_dir + "/ss";
@@ -314,6 +317,7 @@ namespace conf
cfg.msgforwarding = d["msgforwarding"].as<bool>();
cfg.dynamicpeerdiscovery = d["dynamicpeerdiscovery"].as<bool>();
cfg.fullhistory = d["fullhistory"].as<bool>();
cfg.loglevel = d["loglevel"].as<std::string>();
cfg.loglevel_type = get_loglevel_type(cfg.loglevel);
@@ -388,6 +392,7 @@ namespace conf
d.insert_or_assign("msgforwarding", cfg.msgforwarding);
d.insert_or_assign("dynamicpeerdiscovery", cfg.dynamicpeerdiscovery);
d.insert_or_assign("fullhistory", cfg.fullhistory);
d.insert_or_assign("loglevel", cfg.loglevel);
@@ -558,10 +563,11 @@ namespace conf
*/
int validate_contract_dir_paths()
{
const std::string paths[6] = {
const std::string paths[7] = {
ctx.contract_dir,
ctx.config_file,
ctx.hist_dir,
ctx.full_hist_dir,
ctx.state_dir,
ctx.tls_key_file,
ctx.tls_cert_file};