Update the OrderBookDB if there's a jump in the published ledger stream.

This commit is contained in:
David Schwartz
2013-09-25 11:11:40 -07:00
parent be828e834d
commit cca5c86673

View File

@@ -462,7 +462,10 @@ void LedgerMaster::setFullLedger (Ledger::pointer ledger, bool isSynchronous, bo
if (!mValidLedger || (ledger->getLedgerSeq() > mValidLedger->getLedgerSeq())) if (!mValidLedger || (ledger->getLedgerSeq() > mValidLedger->getLedgerSeq()))
mValidLedger = ledger; mValidLedger = ledger;
if (!mPubLedger) if (!mPubLedger)
{
mPubLedger = ledger; mPubLedger = ledger;
getApp().getOrderBookDB().setup(ledger);
}
if ((ledger->getLedgerSeq () != 0) && mCompleteLedgers.hasValue (ledger->getLedgerSeq () - 1)) if ((ledger->getLedgerSeq () != 0) && mCompleteLedgers.hasValue (ledger->getLedgerSeq () - 1))
{ {
@@ -539,6 +542,7 @@ void LedgerMaster::checkAccept (Ledger::ref ledger)
{ {
ledger->pendSaveValidated(true, true); ledger->pendSaveValidated(true, true);
mPubLedger = ledger; mPubLedger = ledger;
getApp().getOrderBookDB().setup(ledger);
} }
uint64 fee, fee2, ref; uint64 fee, fee2, ref;
@@ -699,6 +703,7 @@ std::list<Ledger::pointer> LedgerMaster::findNewLedgersToPublish(ScopedLockType&
WriteLog (lsWARNING, LedgerMaster) << "Gap in validated ledger stream " << mPubLedger->getLedgerSeq () << " - " << WriteLog (lsWARNING, LedgerMaster) << "Gap in validated ledger stream " << mPubLedger->getLedgerSeq () << " - " <<
mValidLedger->getLedgerSeq () - 1; mValidLedger->getLedgerSeq () - 1;
ret.push_back (mValidLedger); ret.push_back (mValidLedger);
getApp().getOrderBookDB().setup(mValidLedger);
} }
else if (mValidLedger->getLedgerSeq () > mPubLedger->getLedgerSeq ()) else if (mValidLedger->getLedgerSeq () > mPubLedger->getLedgerSeq ())
{ {