Skip to content

Commit d82b2c6

Browse files
committed
Merge #19898: log: print unexpected version warning in validation log category
62dba96 log: print unexpected version warning in validation log category (nthumann) Pull request description: Fixes #19603: As suggested by practicalswift, instead of always printing `<n> of the last 100 blocks have unexpected version` as a warning appended to UpdateTip, it is now printed in the validation log category and therefore only visible with `-debug=validation` enabled. Before: `2020-09-06T15:56:00Z UpdateTip: new best=00000000000000000001b2872e107a98b57913120e5c6c87ce2715a34c40adf8 height=646969 version=0x20400000 log2_work=92.261571 tx=565651941 date='2020-09-06T10:35:36Z' progress=0.999888 cache=32.2MiB(237417txo) warning='72 of last 100 blocks have unexpected version'` After: `2020-09-06T16:31:26Z UpdateTip: new best=0000000000000000000b3bd786dc42745dd7be4a8c695500a04518cb9e2f4dc1 height=646971 version=0x20000000 log2_work=92.261607 tx=565655901 date='2020-09-06T10:57:19Z' progress=0.999883 cache=3.8MiB(27550txo)` `2020-09-06T16:31:26Z 71 of last 100 blocks have unexpected version` Ran unit & functional tests, confirmed that the warning is now only printed when validation category is enabled. ACKs for top commit: theStack: ACK 62dba96 MarcoFalke: re-ACK 62dba96 practicalswift: ACK 62dba96 -- only change since last ACK is `s/nUpgraded/num_unexpected_version/` hebasto: re-ACK 62dba96, bitcoin/bitcoin#19898 (review) is resolved now. Tree-SHA512: 2100ca7d6d3fd67c92e81d75162d2506d6f1ecf1761d5180d76663fac06771b35e5c4235ebe1a00731b5f7db82db3cd19328627929c8f22912df592686ba51d3
2 parents ec9b449 + 62dba96 commit d82b2c6

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

src/validation.cpp

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2449,9 +2449,9 @@ static void UpdateTip(CTxMemPool& mempool, const CBlockIndex* pindexNew, const C
24492449
}
24502450

24512451
bilingual_str warning_messages;
2452+
int num_unexpected_version = 0;
24522453
if (!::ChainstateActive().IsInitialBlockDownload())
24532454
{
2454-
int nUpgraded = 0;
24552455
const CBlockIndex* pindex = pindexNew;
24562456
for (int bit = 0; bit < VERSIONBITS_NUM_BITS; bit++) {
24572457
WarningBitsConditionChecker checker(bit);
@@ -2470,18 +2470,20 @@ static void UpdateTip(CTxMemPool& mempool, const CBlockIndex* pindexNew, const C
24702470
{
24712471
int32_t nExpectedVersion = ComputeBlockVersion(pindex->pprev, chainParams.GetConsensus());
24722472
if (pindex->nVersion > VERSIONBITS_LAST_OLD_BLOCK_VERSION && (pindex->nVersion & ~nExpectedVersion) != 0)
2473-
++nUpgraded;
2473+
++num_unexpected_version;
24742474
pindex = pindex->pprev;
24752475
}
2476-
if (nUpgraded > 0)
2477-
AppendWarning(warning_messages, strprintf(_("%d of last 100 blocks have unexpected version"), nUpgraded));
24782476
}
24792477
LogPrintf("%s: new best=%s height=%d version=0x%08x log2_work=%f tx=%lu date='%s' progress=%f cache=%.1fMiB(%utxo)%s\n", __func__,
24802478
pindexNew->GetBlockHash().ToString(), pindexNew->nHeight, pindexNew->nVersion,
24812479
log(pindexNew->nChainWork.getdouble())/log(2.0), (unsigned long)pindexNew->nChainTx,
24822480
FormatISO8601DateTime(pindexNew->GetBlockTime()),
24832481
GuessVerificationProgress(chainParams.TxData(), pindexNew), ::ChainstateActive().CoinsTip().DynamicMemoryUsage() * (1.0 / (1<<20)), ::ChainstateActive().CoinsTip().GetCacheSize(),
24842482
!warning_messages.empty() ? strprintf(" warning='%s'", warning_messages.original) : "");
2483+
2484+
if (num_unexpected_version > 0) {
2485+
LogPrint(BCLog::VALIDATION, "%d of last 100 blocks have unexpected version\n", num_unexpected_version);
2486+
}
24852487
}
24862488

24872489
/** Disconnect m_chain's tip.

0 commit comments

Comments
 (0)