Pass block creation candidate transaction list to plugins#9627
Merged
fab-10 merged 1 commit intobesu-eth:mainfrom Jan 15, 2026
Merged
Conversation
09c7e88 to
a51bea1
Compare
daniellehrner
requested changes
Jan 15, 2026
Contributor
daniellehrner
left a comment
There was a problem hiding this comment.
Some clarifying questions about removed tests and if the breaking change is really neeeded.
Also the changelog entry is currently missing. If we go with the breaking change, we need it and ideally also show a migration path, with an example or a text description
...g/hyperledger/besu/ethereum/eth/transactions/sorter/AbstractPendingTransactionsTestBase.java
Show resolved
Hide resolved
...ava/org/hyperledger/besu/tests/acceptance/plugins/AbstractTestTransactionSelectorPlugin.java
Outdated
Show resolved
Hide resolved
app/src/main/java/org/hyperledger/besu/services/TransactionSelectionServiceImpl.java
Show resolved
Hide resolved
a51bea1 to
2c8ee4b
Compare
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
2c8ee4b to
d4277e5
Compare
daniellehrner
approved these changes
Jan 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
PR description
Pass candidate pending transactions to plugins
Summary
Provides plugins with visibility into the public transaction pool during block creation by passing the list of candidate pending transactions to the plugin transaction selection API.
Changes
TransactionSelectionService.selectPendingTransactions()to include acandidatePendingTransactionsparameter containing the list of transactions from the public poolMotivation
Plugins can now see the full context of available transactions in the public pool, enabling better decision-making for custom transaction selection logic.
Breaking Changes
PluginTransactionSelectorFactory.selectPendingTransactions()signature changed - plugins must update to accept the newcandidatePendingTransactionsparameterFixed Issue(s)
Thanks for sending a pull request! Have you done the following?
doc-change-requiredlabel to this PR if updates are required.Locally, you can run these tests to catch failures early:
./gradlew spotlessApply./gradlew build./gradlew acceptanceTest./gradlew integrationTest./gradlew ethereum:referenceTests:referenceTests