Skip to content

Commit 58538ff

Browse files
committed
[validation] Always call mempool.check() after processing a new transaction
1 parent 4ec1fb5 commit 58538ff

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

src/net_processing.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2299,7 +2299,6 @@ void PeerManagerImpl::ProcessOrphanTx(std::set<uint256>& orphan_work_set)
22992299
break;
23002300
}
23012301
}
2302-
m_mempool.check(m_chainman.ActiveChainstate());
23032302
}
23042303

23052304
bool PeerManagerImpl::PrepareBlockFilterRequest(CNode& peer,
@@ -3261,7 +3260,6 @@ void PeerManagerImpl::ProcessMessage(CNode& pfrom, const std::string& msg_type,
32613260
const TxValidationState& state = result.m_state;
32623261

32633262
if (result.m_result_type == MempoolAcceptResult::ResultType::VALID) {
3264-
m_mempool.check(m_chainman.ActiveChainstate());
32653263
// As this version of the transaction was acceptable, we can forget about any
32663264
// requests for it.
32673265
m_txrequest.ForgetTxHash(tx.GetHash());

src/validation.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3442,7 +3442,9 @@ MempoolAcceptResult ChainstateManager::ProcessTransaction(const CTransactionRef&
34423442
state.Invalid(TxValidationResult::TX_NO_MEMPOOL);
34433443
return MempoolAcceptResult::Failure(state);
34443444
}
3445-
return AcceptToMemoryPool(active_chainstate, *active_chainstate.m_mempool, tx, /* bypass_limits= */ false, test_accept);
3445+
auto result = AcceptToMemoryPool(active_chainstate, *active_chainstate.m_mempool, tx, /* bypass_limits= */ false, test_accept);
3446+
active_chainstate.m_mempool->check(active_chainstate);
3447+
return result;
34463448
}
34473449

34483450
bool TestBlockValidity(BlockValidationState& state,

0 commit comments

Comments
 (0)