Bugfixes.

This commit is contained in:
JoelKatz
2012-07-14 00:17:41 -07:00
parent 7ce766dd4f
commit 5a660d1f04
3 changed files with 29 additions and 13 deletions

View File

@@ -129,17 +129,23 @@ void Application::run()
Log(lsINFO) << "Root master seed: " << rootSeedMaster.humanSeed();
Log(lsINFO) << "Root account: " << rootAddress.humanAccountID();
Ledger::pointer firstLedger = boost::make_shared<Ledger>(rootAddress, SYSTEM_CURRENCY_START);
assert(!!firstLedger->getAccountState(rootAddress));
firstLedger->updateHash();
firstLedger->setClosed();
firstLedger->setAccepted();
mMasterLedger.pushLedger(firstLedger);
{
Ledger::pointer ledger = boost::make_shared<Ledger>(rootAddress, SYSTEM_CURRENCY_START);
assert(!!ledger->getAccountState(rootAddress));
ledger->updateHash();
ledger->setClosed();
ledger->setAccepted();
mMasterLedger.pushLedger(ledger);
Ledger::pointer secondLedger = boost::make_shared<Ledger>(true, boost::ref(*firstLedger));
mMasterLedger.pushLedger(secondLedger);
assert(!!secondLedger->getAccountState(rootAddress));
// temporary
for (int i = 0; i < 2; ++i)
{
ledger = boost::make_shared<Ledger>(true, boost::ref(*ledger));
ledger->setClosed();
ledger->setAccepted();
mMasterLedger.pushLedger(ledger);
assert(!!secondLedger->getAccountState(rootAddress));
}
}
mNetOps.setStateTimer();

View File

@@ -59,13 +59,23 @@ Ledger::Ledger(Ledger& ledger, bool isMutable) : mTotCoins(ledger.mTotCoins), mL
Ledger::Ledger(bool dummy, Ledger& prevLedger) :
mTotCoins(prevLedger.mTotCoins), mLedgerSeq(prevLedger.mLedgerSeq + 1),
mCloseTime(0), mParentCloseTime(prevLedger.mCloseTime), mCloseResolution(prevLedger.mCloseResolution),
mParentCloseTime(prevLedger.mCloseTime), mCloseResolution(prevLedger.mCloseResolution),
mCloseFlags(0), mClosed(false), mValidHash(false), mAccepted(false), mImmutable(false),
mTransactionMap(new SHAMap()), mAccountStateMap(prevLedger.mAccountStateMap->snapShot(true))
{ // Create a new ledger that follows this one
prevLedger.updateHash();
mParentHash = prevLedger.getHash();
assert(mParentHash.isNonZero());
mCloseResolution = ContinuousLedgerTiming::getNextLedgerTimeResolution(prevLedger.mCloseResolution,
prevLedger.getCloseAgree(), mLedgerSeq);
if (prevLedger.mCloseTime == 0)
{
mCloseTime = theApp->getOPs().getNetworkTimeNC();
mCloseTime -= (mCloseTime % mCloseResolution);
}
else
mCloseTime = prevLedger.mCloseTime + mCloseResolution;
}
Ledger::Ledger(const std::vector<unsigned char>& rawLedger) :
@@ -142,7 +152,7 @@ void Ledger::setAccepted(uint32 closeTime, int closeResolution, bool correctClos
void Ledger::setAccepted()
{ // used when we acquired the ledger
assert(mClosed && !mAccepted && (mCloseResolution != 0));
assert(mClosed && !mAccepted && (mCloseResolution != 0) && (mCloseResolution != 0));
updateHash();
mAccepted = true;
mImmutable = true;

View File

@@ -310,7 +310,7 @@ void NetworkOPs::checkState(const boost::system::error_code& result)
(theApp->getMasterLedger().getCurrentLedger()->getCloseTimeNC() + 4))
setMode(omFULL);
else
Log(lsWARNING) << "Too late to go to full, will try in consensus window";
Log(lsINFO) << "Will try to go to FULL in consensus window";
}
if (mMode == omFULL)