Remove mempool global from interfaces#19848
Conversation
|
Correct me if I'm wrong but |
|
Line 1374 in 068bc21 Currently it will be set during init until shortly before shutdown is done. Though, in the future it may be nullptr for the whole runtime of the program (see also #19629 (comment)) |
|
The following sections might be updated with supplementary metadata relevant to reviewers and maintainers. ConflictsReviewers, this pull request conflicts with the following ones:
If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first. |
|
Concept ACK. |
|
Concept ACK |
|
utACK fa5fa7e025164f9ac73741ece697e3ea4e7ed64c |
ryanofsky
left a comment
There was a problem hiding this comment.
Code review ACK fa5fa7e025164f9ac73741ece697e3ea4e7ed64c. Seems good for these calls to function without a mempool. Agree with hebasto it would be nice to clean up locking assertions within IsRBFOptIn. But if that requires more invasive changes to IsRBFOptIn, it would probably be better to do it in a targeted PR before or after this one.
fa5fa7e to
fa9124d
Compare
|
Changed the first commit to remove |
hebasto
left a comment
There was a problem hiding this comment.
Approach ACK fa9124d93527fd5ff741000b790a3772f2961a52
fa9124d to
fadb436
Compare
|
fixed up and force pushed last doc commit |
hebasto
left a comment
There was a problem hiding this comment.
ACK fadb436745515f16efb1330b36e6f3831c0ac5fb
jnewbery
left a comment
There was a problem hiding this comment.
I'm not very keen on the static const mempool and have an alternative.
ACK fadb436745515f16efb1330b36e6f3831c0ac5fb
ryanofsky
left a comment
There was a problem hiding this comment.
Code review ack fadb436745515f16efb1330b36e6f3831c0ac5fb. Since last review reverted changes to IsRBFOptIn with different IsRBFOptInEmptyMempool workaround. John's third workaround seems good too.
darosior
left a comment
There was a problem hiding this comment.
tested ACK fadb436745515f16efb1330b36e6f3831c0ac5fb
I also prefer jnewberry's patch, but not against merging this without it.
47e4f69 to
fa9ee52
Compare
|
utACK fa9ee52 |
Summary: > The chain interface has an m_node member, which has a pointer to the mempool global. Use the pointer instead of the global to prepare the removal of the mempool global. See [[bitcoin/bitcoin#19556 | core#19556]] This is a backport of [[bitcoin/bitcoin#19848 | core#19848]] Test Plan: `ninja all check-all` Reviewers: #bitcoin_abc, Fabien Reviewed By: #bitcoin_abc, Fabien Differential Revision: https://reviews.bitcoinabc.org/D9784

The chain interface has an
m_nodemember, which has a pointer to the mempool global. Use the pointer instead of the global to prepare the removal of the mempool global. See #19556