diff --git a/src/cpp/ripple/NetworkOPs.cpp b/src/cpp/ripple/NetworkOPs.cpp index c218afbc0..6963cc0c6 100644 --- a/src/cpp/ripple/NetworkOPs.cpp +++ b/src/cpp/ripple/NetworkOPs.cpp @@ -2054,7 +2054,7 @@ void NetworkOPs::makeFetchPack(Job&, boost::weak_ptr wPeer, newObj.set_ledgerseq(lSeq); } - if (wantLedger->getAccountHash().isNonZero() && (pack.size() < 768)) + if (wantLedger->getAccountHash().isNonZero() && (pack.size() < 512)) { pack = wantLedger->peekTransactionMap()->getFetchPack(NULL, true, 256); BOOST_FOREACH(SHAMap::fetchPackEntry_t& node, pack) @@ -2065,11 +2065,11 @@ void NetworkOPs::makeFetchPack(Job&, boost::weak_ptr wPeer, newObj.set_ledgerseq(lSeq); } } - if (reply.objects().size() >= 512) + if (reply.objects().size() >= 256) break; haveLedger = wantLedger; wantLedger = getLedgerByHash(haveLedger->getParentHash()); - } while (wantLedger); + } while (wantLedger && (upTime() <= (uUptime + 1))); cLog(lsINFO) << "Built fetch pack with " << reply.objects().size() << " nodes"; PackedMessage::pointer msg = boost::make_shared(reply, ripple::mtGET_OBJECTS);