From d3daa2fc00a47df7c0b4b5556c6e0ca6350f2218 Mon Sep 17 00:00:00 2001 From: JoelKatz Date: Mon, 13 Aug 2012 04:53:50 -0700 Subject: [PATCH] Extra debug to help rule out the possibility that our ledgers are diverging after we are in sync. --- src/LedgerConsensus.cpp | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/LedgerConsensus.cpp b/src/LedgerConsensus.cpp index 3f5fd06e11..ede0804cc4 100644 --- a/src/LedgerConsensus.cpp +++ b/src/LedgerConsensus.cpp @@ -869,9 +869,15 @@ void LedgerConsensus::applyTransactions(SHAMap::pointer set, Ledger::pointer app void LedgerConsensus::accept(SHAMap::pointer set) { assert(set->getHash() == mOurPosition->getCurrentHash()); + + uint32 closeTime = mOurPosition->getCloseTime() - (mOurPosition->getCloseTime() & mCloseResolution); + Log(lsINFO) << "Computing new LCL based on network consensus"; - Log(lsDEBUG) << "Consensus " << mOurPosition->getCurrentHash().GetHex(); - Log(lsDEBUG) << "Previous LCL " << mPrevLedgerHash.GetHex(); + if (mHaveCorrectLCL) + { + Log(lsINFO) << "CNF tx " << mOurPosition->getCurrentHash().GetHex() << ", close " << closeTime; + Log(lsINFO) << "CNF oldLCL " << mPrevLedgerHash.GetHex(); + } Ledger::pointer newLCL = boost::make_shared(false, boost::ref(*mPreviousLedger)); newLCL->armDirty(); @@ -880,20 +886,17 @@ void LedgerConsensus::accept(SHAMap::pointer set) applyTransactions(set, newLCL, newLCL, failedTransactions, true); newLCL->setClosed(); - uint32 closeTime = mOurPosition->getCloseTime() - (mOurPosition->getCloseTime() & mCloseResolution); bool closeTimeCorrect = true; if (closeTime == 0) { // we agreed to disagree closeTimeCorrect = false; closeTime = mPreviousLedger->getCloseTimeNC() + 1; - Log(lsINFO) << "Consensus close time (good) " << closeTime; + Log(lsINFO) << "CNF badclose " << closeTime; } - else Log(lsINFO) << "Consensus close time (bad) " << closeTime; newLCL->setAccepted(closeTime, mCloseResolution, closeTimeCorrect); newLCL->updateHash(); uint256 newLCLHash = newLCL->getHash(); - Log(lsTRACE) << "newLCL " << newLCLHash.GetHex(); statusChange(newcoin::neACCEPTED_LEDGER, *newLCL); if (mValidating) { @@ -905,8 +908,10 @@ void LedgerConsensus::accept(SHAMap::pointer set) newcoin::TMValidation val; val.set_validation(&validation[0], validation.size()); theApp->getConnectionPool().relayMessage(NULL, boost::make_shared(val, newcoin::mtVALIDATION)); - Log(lsINFO) << "Validation sent " << newLCLHash.GetHex(); + Log(lsINFO) << "CNF Val " << newLCLHash.GetHex(); } + else + Log(lsINFO) << "CNF newLCL " << newLCLHash.GetHex(); Ledger::pointer newOL = boost::make_shared(true, boost::ref(*newLCL)); ScopedLock sl = theApp->getMasterLedger().getLock();