You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
assert(pindex->GetBlockHash() == consensusParams.hashGenesisBlock); // Genesis block's hash must match.
4524
4524
assert(pindex == chainActive.Genesis()); // The current active chain's genesis block must be this block.
4525
4525
}
4526
-
if (pindex->nChainTx == 0)assert(pindex->nSequenceId <= 0);// nSequenceId can't be set positive for blocks that aren't linked (negative is used for preciousblock)
4526
+
if (!pindex->HaveTxsDownloaded())assert(pindex->nSequenceId <= 0); // nSequenceId can't be set positive for blocks that aren't linked (negative is used for preciousblock)
4527
4527
// VALID_TRANSACTIONS is equivalent to nTx > 0 for all nodes (whether or not pruning has occurred).
4528
4528
// HAVE_DATA is only equivalent to nTx > 0 (or VALID_TRANSACTIONS) if no pruning has occurred.
if (pindex->nStatus & BLOCK_HAVE_UNDO) assert(pindex->nStatus & BLOCK_HAVE_DATA);
4538
4538
assert(((pindex->nStatus & BLOCK_VALID_MASK) >= BLOCK_VALID_TRANSACTIONS) == (pindex->nTx > 0)); // This is pruning-independent.
4539
-
// All parents having had data (at some point) is equivalent to all parents being VALID_TRANSACTIONS, which is equivalent to nChainTx being set.
4540
-
assert((pindexFirstNeverProcessed !=nullptr) == (pindex->nChainTx == 0));// nChainTx != 0 is used to signal that all parent blocks have been processed (but may have been pruned).
assert(pindex->nHeight == nHeight); // nHeight must be consistent.
4543
4543
assert(pindex->pprev == nullptr || pindex->nChainWork >= pindex->pprev->nChainWork); // For every block except the genesis block, the chainwork must be larger than the parent's.
4544
4544
assert(nHeight < 2 || (pindex->pskip && (pindex->pskip->nHeight < nHeight))); // The pskip pointer must point back for all but the first 2 blocks.
0 commit comments