From 0db9fc865cfe58c30d6302f09ae0ad0f51a2f999 Mon Sep 17 00:00:00 2001 From: JoelKatz Date: Sun, 28 Oct 2012 21:05:07 -0700 Subject: [PATCH] Some performance tweaks. --- src/Ledger.cpp | 3 +++ src/LedgerMaster.cpp | 2 +- src/SHAMapSync.cpp | 6 +++++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/Ledger.cpp b/src/Ledger.cpp index 340f09b86d..e76f4a78b5 100644 --- a/src/Ledger.cpp +++ b/src/Ledger.cpp @@ -1037,6 +1037,9 @@ int Ledger::getPendingSaves() void Ledger::pendSave(bool fromConsensus) { + if (!fromConsensus && !theApp->isNew(getHash())) + return; + boost::thread thread(boost::bind(&Ledger::saveAcceptedLedger, shared_from_this(), fromConsensus)); thread.detach(); diff --git a/src/LedgerMaster.cpp b/src/LedgerMaster.cpp index d229d4b724..d83c72bf84 100644 --- a/src/LedgerMaster.cpp +++ b/src/LedgerMaster.cpp @@ -152,7 +152,7 @@ void LedgerMaster::setFullLedger(Ledger::ref ledger) if (mMissingLedger || !theConfig.FULL_HISTORY) return; - if (Ledger::getPendingSaves() > 2) + if (Ledger::getPendingSaves() > 3) { cLog(lsINFO) << "Too many pending ledger saves"; return; diff --git a/src/SHAMapSync.cpp b/src/SHAMapSync.cpp index b8202fb96a..e0ced0d8dd 100644 --- a/src/SHAMapSync.cpp +++ b/src/SHAMapSync.cpp @@ -41,6 +41,7 @@ void SHAMap::getMissingNodes(std::vector& nodeIDs, std::vector& nodeIDs, std::vectorgetChildNodeID(branch)); + have_all = false; + nodeIDs.push_back(childID); if (--max <= 0) return; } @@ -84,6 +86,8 @@ void SHAMap::getMissingNodes(std::vector& nodeIDs, std::vectorsetFullBelow(); } }