aboutsummaryrefslogtreecommitdiff
path: root/src/validationinterface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/validationinterface.cpp')
-rw-r--r--src/validationinterface.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/validationinterface.cpp b/src/validationinterface.cpp
index 813fde109c..da2685d771 100644
--- a/src/validationinterface.cpp
+++ b/src/validationinterface.cpp
@@ -9,6 +9,7 @@
#include <consensus/validation.h>
#include <kernel/chain.h>
#include <kernel/mempool_entry.h>
+#include <kernel/mempool_removal_reason.h>
#include <logging.h>
#include <primitives/block.h>
#include <primitives/transaction.h>
@@ -19,8 +20,6 @@
#include <unordered_map>
#include <utility>
-std::string RemovalReasonToString(const MemPoolRemovalReason& r) noexcept;
-
/**
* ValidationSignalsImpl manages a list of shared_ptr<CValidationInterface> callbacks.
*
@@ -95,7 +94,7 @@ public:
ValidationSignals::ValidationSignals(std::unique_ptr<util::TaskRunnerInterface> task_runner)
: m_internals{std::make_unique<ValidationSignalsImpl>(std::move(task_runner))} {}
-ValidationSignals::~ValidationSignals() {}
+ValidationSignals::~ValidationSignals() = default;
void ValidationSignals::FlushBackgroundCallbacks()
{
@@ -167,7 +166,7 @@ void ValidationSignals::SyncWithValidationInterfaceQueue()
} while (0)
#define LOG_EVENT(fmt, ...) \
- LogPrint(BCLog::VALIDATION, fmt "\n", __VA_ARGS__)
+ LogDebug(BCLog::VALIDATION, fmt "\n", __VA_ARGS__)
void ValidationSignals::UpdatedBlockTip(const CBlockIndex *pindexNew, const CBlockIndex *pindexFork, bool fInitialDownload) {
// Dependencies exist that require UpdatedBlockTip events to be delivered in the order in which
@@ -183,6 +182,12 @@ void ValidationSignals::UpdatedBlockTip(const CBlockIndex *pindexNew, const CBlo
fInitialDownload);
}
+void ValidationSignals::ActiveTipChange(const CBlockIndex& new_tip, bool is_ibd)
+{
+ LOG_EVENT("%s: new block hash=%s block height=%d", __func__, new_tip.GetBlockHash().ToString(), new_tip.nHeight);
+ m_internals->Iterate([&](CValidationInterface& callbacks) { callbacks.ActiveTipChange(new_tip, is_ibd); });
+}
+
void ValidationSignals::TransactionAddedToMempool(const NewMempoolTransactionInfo& tx, uint64_t mempool_sequence)
{
auto event = [tx, mempool_sequence, this] {