mirror of
https://github.com/XRPLF/rippled.git
synced 2025-11-27 06:25:51 +00:00
Set a validated ledger in --load mode.
This commit is contained in:
@@ -157,6 +157,14 @@ void LedgerMaster::storeLedger (Ledger::pointer ledger)
|
|||||||
mLedgerHistory.addAcceptedLedger (ledger, false);
|
mLedgerHistory.addAcceptedLedger (ledger, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void LedgerMaster::forceValid (Ledger::pointer ledger)
|
||||||
|
{
|
||||||
|
if (!mValidLedger || (mPubLedger->getLedgerSeq() < ledger->getLedgerSeq()))
|
||||||
|
mValidLedger = ledger;
|
||||||
|
if (!mPubLedger || (mPubLedger->getLedgerSeq() < 2))
|
||||||
|
mPubLedger = ledger;
|
||||||
|
}
|
||||||
|
|
||||||
Ledger::pointer LedgerMaster::closeLedger (bool recover)
|
Ledger::pointer LedgerMaster::closeLedger (bool recover)
|
||||||
{
|
{
|
||||||
boost::recursive_mutex::scoped_lock sl (mLock);
|
boost::recursive_mutex::scoped_lock sl (mLock);
|
||||||
|
|||||||
@@ -88,6 +88,7 @@ public:
|
|||||||
void pushLedger (Ledger::pointer newLedger);
|
void pushLedger (Ledger::pointer newLedger);
|
||||||
void pushLedger (Ledger::pointer newLCL, Ledger::pointer newOL, bool fromConsensus);
|
void pushLedger (Ledger::pointer newLCL, Ledger::pointer newOL, bool fromConsensus);
|
||||||
void storeLedger (Ledger::pointer);
|
void storeLedger (Ledger::pointer);
|
||||||
|
void forceValid (Ledger::pointer);
|
||||||
|
|
||||||
void setFullLedger (Ledger::pointer ledger);
|
void setFullLedger (Ledger::pointer ledger);
|
||||||
|
|
||||||
|
|||||||
@@ -796,6 +796,7 @@ bool ApplicationImp::loadOldLedger (const std::string& l, bool bReplay)
|
|||||||
|
|
||||||
Ledger::pointer openLedger = boost::make_shared<Ledger> (false, boost::ref (*loadLedger));
|
Ledger::pointer openLedger = boost::make_shared<Ledger> (false, boost::ref (*loadLedger));
|
||||||
mLedgerMaster.switchLedgers (loadLedger, openLedger);
|
mLedgerMaster.switchLedgers (loadLedger, openLedger);
|
||||||
|
mLedgerMaster.forceValid(loadLedger);
|
||||||
mNetOps.setLastCloseTime (loadLedger->getCloseTimeNC ());
|
mNetOps.setLastCloseTime (loadLedger->getCloseTimeNC ());
|
||||||
|
|
||||||
if (bReplay)
|
if (bReplay)
|
||||||
|
|||||||
Reference in New Issue
Block a user