mirror of
https://github.com/EvernodeXRPL/hpcore.git
synced 2026-04-29 15:37:59 +00:00
Introducing ledger shards and new ledger syncing logic. (#247)
- The ledgers are stored in a sqlite database in ledger file system. - Ledgers are organized in shards inside primary folder. - Raw inputs are saved as shards inside blob folder. No input files are created if neither inputs nor outputs are available. - Both last primary shard hash and last blob shard hashes are subjected to consensus and necessary sync operations are performed if out of sync. - Hpfs sync support setting single sync targets from both ends of the list. (Targets set from front are prioritized). - Contract and ledger syncs and serving are performed independently.
This commit is contained in:
committed by
GitHub
parent
e394497698
commit
16c5b3fae2
@@ -12,8 +12,7 @@
|
||||
#include "usr/read_req.hpp"
|
||||
#include "p2p/p2p.hpp"
|
||||
#include "consensus.hpp"
|
||||
#include "ledger.hpp"
|
||||
#include "ledger/ledger_sample.hpp"
|
||||
#include "ledger/ledger.hpp"
|
||||
#include "unl.hpp"
|
||||
|
||||
/**
|
||||
@@ -71,7 +70,6 @@ void deinit()
|
||||
p2p::deinit();
|
||||
read_req::deinit();
|
||||
consensus::deinit();
|
||||
ledger::ledger_sample::deinit(); // Deinit method in new ledger implementation.
|
||||
sc::deinit();
|
||||
ledger::deinit();
|
||||
conf::deinit();
|
||||
@@ -197,7 +195,6 @@ int main(int argc, char **argv)
|
||||
LOG_INFO << "Contract: " << conf::cfg.contract.id << " (" << conf::cfg.contract.version << ")";
|
||||
|
||||
if (sc::init() == -1 ||
|
||||
ledger::ledger_sample::init() == -1 || // Init method of new ledger implementaiton.
|
||||
ledger::init() == -1 ||
|
||||
unl::init() == -1 ||
|
||||
consensus::init() == -1 ||
|
||||
|
||||
Reference in New Issue
Block a user