diff options
author | glozow <gloriajzhao@gmail.com> | 2024-04-19 16:13:04 +0100 |
---|---|---|
committer | glozow <gloriajzhao@gmail.com> | 2024-04-19 16:22:46 +0100 |
commit | 67c0d93982ad214f5e0c9509e9dc3d6d792ad97c (patch) | |
tree | 01dabde429b4382ad6c9ea4a00c880c0e481602f /ci/test | |
parent | c05c214f2e9cfd6070a3c7680bfa09358fd9d97a (diff) | |
parent | 60ca5d55081275a011ccfc9546e0c4a8c4030493 (diff) |
Merge bitcoin/bitcoin#29827: test: p2p: add test for rejected tx request logic (`m_recent_rejects` filter)
60ca5d55081275a011ccfc9546e0c4a8c4030493 test: p2p: add test for rejected tx request logic (`m_recent_rejects` filter) (Sebastian Falbesoner)
e9dc511a7e9a562f953ff93f358102f555f583e6 fixup: get all utxos up front in fill_mempool, discourage wallet mixing (glozow)
Pull request description:
Motivated by the discussion in #28970 (https://github.com/bitcoin/bitcoin/pull/28970#discussion_r1553911167), this PR adds test coverage for the logic around the `m_recent_rejects` filter, in particular that the filter is cleared after a new block comes in:
https://github.com/bitcoin/bitcoin/blob/f0794cbd405636a7f528a60f2873050b865cf7e8/src/net_processing.cpp#L2199-L2206
As expected, the second part of the test fails if the following patch is applied:
```diff
diff --git a/src/net_processing.cpp b/src/net_processing.cpp
index 6996af38cb..5cb1090e70 100644
--- a/src/net_processing.cpp
+++ b/src/net_processing.cpp
@@ -2202,7 +2202,7 @@ bool PeerManagerImpl::AlreadyHaveTx(const GenTxid& gtxid)
// or a double-spend. Reset the rejects filter and give those
// txs a second chance.
hashRecentRejectsChainTip = m_chainman.ActiveChain().Tip()->GetBlockHash();
- m_recent_rejects.reset();
+ //m_recent_rejects.reset();
}
const uint256& hash = gtxid.GetHash();
```
I'm still not sure in which file this test fits best, and if there is already test coverage for the first part of the test somewhere. Happy for any suggestions.
ACKs for top commit:
maflcko:
ACK 60ca5d55081275a011ccfc9546e0c4a8c4030493 🍳
glozow:
code review ACK 60ca5d55081275a011ccfc9546e0c4a8c4030493
instagibbs:
ACK 60ca5d55081275a011ccfc9546e0c4a8c4030493
Tree-SHA512: 9cab43858e8f84db04a708151e6775c9cfc68c20ff53096220eac0b2c406f31aaf9223e8e04be345e95bf0a3f6dd15efac50b0ebeb1582a48a4560b3ab0bcba5
Diffstat (limited to 'ci/test')
0 files changed, 0 insertions, 0 deletions