From b2c46db00638d071d4a7674b3ad7cc56cc9642f9 Mon Sep 17 00:00:00 2001 From: JoelKatz Date: Mon, 30 Sep 2013 12:25:44 -0700 Subject: [PATCH] Fix a bug that can cause servers to stick as 'syncing' for too long. Add a sensible path to get to omFULL state when consensus is initiated by peer action. --- src/ripple_app/misc/NetworkOPs.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/ripple_app/misc/NetworkOPs.cpp b/src/ripple_app/misc/NetworkOPs.cpp index cb2ff21289..4598bdbed8 100644 --- a/src/ripple_app/misc/NetworkOPs.cpp +++ b/src/ripple_app/misc/NetworkOPs.cpp @@ -1423,6 +1423,8 @@ bool NetworkOPsImp::haveConsensusObject () if (!ledgerChange) { m_journal.info << "Beginning consensus due to peer action"; + if ( ((mMode == omCONNECTED) || (mMode == omTRACKING)) && (getPreviousProposers() >= m_ledgerMaster.getMinValidations()) ) + setMode (omFULL); beginConsensus (networkClosed, m_ledgerMaster.getCurrentLedger ()); } }