support explicit filtering of txs when preparing to mine #3318
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds functionality to explicitly filter txs (by bucket) when preparing a set of candidate transaction to mine a block.
We now explicitly filter by kernel variant, allowing buckets containing transactions with the following feature variants (and only these feature variants) -
HF3 will introduce the following new kernel variant (unsupported prior to HF3) -
When we introduce the proposed NoRecentDuplicate kernel variant in HF3 we will use this new filtering logic to explicitly start allowing txs containing NoRecentDuplicate kernels to be included in a candidate block to be mined.
TODO -
Later buckets can be dependent on earlier buckets due to fee calcs.
Actually
tx_filter
closure can be used on the way in to the txpool also. The filtering logic is the same.tx_filter
on way in to txpool/stempool also.