mirror of
https://github.com/kvazar-network/kevacoin.git
synced 2025-01-24 05:44:30 +00:00
Revert "net: Avoid duplicate getheaders requests." PR #8054
This reverts commit f93c2a1b7ee912f0651ebb4c8a5eca220e434f4a. This can cause synchronization to get stuck.
This commit is contained in:
parent
115735d547
commit
4fbdc4365b
@ -5835,13 +5835,6 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv,
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
// If we already know the last header in the message, then it contains
|
|
||||||
// no new information for us. In this case, we do not request
|
|
||||||
// more headers later. This prevents multiple chains of redundant
|
|
||||||
// getheader requests from running in parallel if triggered by incoming
|
|
||||||
// blocks while the node is still in initial headers sync.
|
|
||||||
const bool hasNewHeaders = (mapBlockIndex.count(headers.back().GetHash()) == 0);
|
|
||||||
|
|
||||||
CBlockIndex *pindexLast = NULL;
|
CBlockIndex *pindexLast = NULL;
|
||||||
BOOST_FOREACH(const CBlockHeader& header, headers) {
|
BOOST_FOREACH(const CBlockHeader& header, headers) {
|
||||||
CValidationState state;
|
CValidationState state;
|
||||||
@ -5862,7 +5855,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv,
|
|||||||
assert(pindexLast);
|
assert(pindexLast);
|
||||||
UpdateBlockAvailability(pfrom->GetId(), pindexLast->GetBlockHash());
|
UpdateBlockAvailability(pfrom->GetId(), pindexLast->GetBlockHash());
|
||||||
|
|
||||||
if (nCount == MAX_HEADERS_RESULTS && hasNewHeaders) {
|
if (nCount == MAX_HEADERS_RESULTS) {
|
||||||
// Headers message had its maximum size; the peer may have more headers.
|
// Headers message had its maximum size; the peer may have more headers.
|
||||||
// TODO: optimize: if pindexLast is an ancestor of chainActive.Tip or pindexBestHeader, continue
|
// TODO: optimize: if pindexLast is an ancestor of chainActive.Tip or pindexBestHeader, continue
|
||||||
// from there instead.
|
// from there instead.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user