From 2463d25682232c3dcac2ef5f1c964ed89f8f2015 Mon Sep 17 00:00:00 2001 From: JoelKatz Date: Fri, 13 Jul 2012 10:35:08 -0700 Subject: [PATCH] Must update positions even if not proposing. Otherwise, we never realize there's a consensus on close times. --- src/LedgerConsensus.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/LedgerConsensus.cpp b/src/LedgerConsensus.cpp index b199616a94..855281b010 100644 --- a/src/LedgerConsensus.cpp +++ b/src/LedgerConsensus.cpp @@ -381,9 +381,12 @@ int LedgerConsensus::stateEstablish() { // we are establishing consensus if (mCurrentSeconds < LEDGER_MIN_CONSENSUS) return 1; - if (mProposing) - updateOurPositions(); - if (haveConsensus() && mHaveCloseTimeConsensus) + updateOurPositions(); + if (!mHaveCloseTimeConsensus) + { + Log(lsINFO) << "No close time consensus"; + } + else if (haveConsensus()) { Log(lsINFO) << "Converge cutoff"; mState = lcsFINISHED; @@ -441,6 +444,7 @@ void LedgerConsensus::timerEntry() void LedgerConsensus::updateOurPositions() { + Log(lsINFO) << "Updating our positions"; bool changes = false; SHAMap::pointer ourPosition; std::vector addedTx, removedTx;