|
|
|
@ -45,7 +45,6 @@
|
|
|
|
|
#include <sstream>
|
|
|
|
|
|
|
|
|
|
#include <boost/algorithm/string/replace.hpp>
|
|
|
|
|
#include <boost/algorithm/string/join.hpp>
|
|
|
|
|
#include <boost/thread.hpp>
|
|
|
|
|
|
|
|
|
|
#if defined(NDEBUG)
|
|
|
|
@ -2242,6 +2241,13 @@ static void DoWarning(const std::string& strWarning)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/** Private helper function that concatenates warning messages. */
|
|
|
|
|
static void AppendWarning(std::string& res, const std::string& warn)
|
|
|
|
|
{
|
|
|
|
|
if (!res.empty()) res += ", ";
|
|
|
|
|
res += warn;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/** Check warning conditions and do some notifications on new chain tip set. */
|
|
|
|
|
void static UpdateTip(const CBlockIndex *pindexNew, const CChainParams& chainParams) {
|
|
|
|
|
// New best block
|
|
|
|
@ -2253,7 +2259,7 @@ void static UpdateTip(const CBlockIndex *pindexNew, const CChainParams& chainPar
|
|
|
|
|
g_best_block_cv.notify_all();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
std::vector<std::string> warningMessages;
|
|
|
|
|
std::string warningMessages;
|
|
|
|
|
if (!IsInitialBlockDownload())
|
|
|
|
|
{
|
|
|
|
|
int nUpgraded = 0;
|
|
|
|
@ -2266,7 +2272,7 @@ void static UpdateTip(const CBlockIndex *pindexNew, const CChainParams& chainPar
|
|
|
|
|
if (state == ThresholdState::ACTIVE) {
|
|
|
|
|
DoWarning(strWarning);
|
|
|
|
|
} else {
|
|
|
|
|
warningMessages.push_back(strWarning);
|
|
|
|
|
AppendWarning(warningMessages, strWarning);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -2279,7 +2285,7 @@ void static UpdateTip(const CBlockIndex *pindexNew, const CChainParams& chainPar
|
|
|
|
|
pindex = pindex->pprev;
|
|
|
|
|
}
|
|
|
|
|
if (nUpgraded > 0)
|
|
|
|
|
warningMessages.push_back(strprintf(_("%d of last 100 blocks have unexpected version"), nUpgraded));
|
|
|
|
|
AppendWarning(warningMessages, strprintf(_("%d of last 100 blocks have unexpected version"), nUpgraded));
|
|
|
|
|
if (nUpgraded > 100/2)
|
|
|
|
|
{
|
|
|
|
|
std::string strWarning = _("Warning: Unknown block versions being mined! It's possible unknown rules are in effect");
|
|
|
|
@ -2293,7 +2299,7 @@ void static UpdateTip(const CBlockIndex *pindexNew, const CChainParams& chainPar
|
|
|
|
|
FormatISO8601DateTime(pindexNew->GetBlockTime()),
|
|
|
|
|
GuessVerificationProgress(chainParams.TxData(), pindexNew), pcoinsTip->DynamicMemoryUsage() * (1.0 / (1<<20)), pcoinsTip->GetCacheSize());
|
|
|
|
|
if (!warningMessages.empty())
|
|
|
|
|
LogPrintf(" warning='%s'", boost::algorithm::join(warningMessages, ", ")); /* Continued */
|
|
|
|
|
LogPrintf(" warning='%s'", warningMessages); /* Continued */
|
|
|
|
|
LogPrintf("\n");
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|