Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sequenced pool synonym for legacy pool #6274

Merged
merged 9 commits into from
Dec 12, 2023

Conversation

matthew1001
Copy link
Contributor

@matthew1001 matthew1001 commented Dec 11, 2023

PR description

Introduces the new sequenced synonym for the legacy transaction pool, as discussed in #6211.

The PR adds enough for users to start switching to the --tx-pool=sequenced option ahead of removal of the legacy pool in the future.

I've added one or two additional unit tests to check that legacy options still work with the sequenced pool, but haven't done anything more comprehensive than that because the future PR to deprecate remove the legacy pool will refactor all of the existing tests to use sequenced anyway.

Fixed Issue(s)

Fixes #6211

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
Copy link

github-actions bot commented Dec 11, 2023

  • I thought about documentation and added the doc-change-required label to this PR if updates are required.
  • I thought about the changelog and included a changelog update if required.
  • If my PR includes database changes (e.g. KeyValueSegmentIdentifier) I have thought about compatibility and performed forwards and backwards compatibility tests

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
@matthew1001 matthew1001 added the doc-change-required Indicates an issue or PR that requires doc to be updated label Dec 11, 2023
@matthew1001
Copy link
Contributor Author

Re. docs, I think the https://besu.hyperledger.org/public-networks/concepts/transactions/pool topic probably ought to have a new sub-heading for the sequenced pool. We didn't have one before for the legacy pool but with recent changes to the legacy pool we should try to describe the use-cases the sequenced pool is aimed at and how it differs from the layered pool.

I'd be happy to provide some words to help with that docs topic.

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
@matthew1001 matthew1001 marked this pull request as ready for review December 11, 2023 12:12
Copy link
Contributor

@macfarla macfarla left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM . non-blocking suggestion re warning message text - just to make it clearer that they are not separate implementations

Also prob need a changelog entry

CHANGELOG.md Outdated Show resolved Hide resolved

CommandLineUtils.failIfOptionDoesntMeetRequirement(
commandLine,
"Could not use layered transaction pool options with legacy implementation",
!txPoolImplementation.equals(LEGACY),
"Could not use layered transaction pool options with legacy or sequenced implementation",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
"Could not use layered transaction pool options with legacy or sequenced implementation",
"Could not use layered transaction pool options with legacy (sequenced) implementation",

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah it's difficult balancing the fact that we don't want to make the sequenced pool sound like it's the "legacy" option, even though in reality they are the same implementation. At some point the legacy option will be removed entirely so we'll update these messages to just talk about sequenced in the future. Personally I'd prefer to leave it as "legacy or sequenced" for now, but happy to discuss further and we can always raise another PR to re-word if we need to?

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>
@matthew1001
Copy link
Contributor Author

LGTM . non-blocking suggestion re warning message text - just to make it clearer that they are not separate implementations

Also prob need a changelog entry

Thanks for the comments @macfarla. I've added a reply about the warning message wording. Re. change log entry, I've added a one-liner to it already. Did you want anything more substantial, like Fabio did for the layered pool in 23.10.0?

matthew1001 and others added 3 commits December 12, 2023 08:52
…hyperledger#6205)

revert some modification that was made to pass tests hyperledger#5686 and fix this tests by loading the storage with EMPTY_TRIE_HASH if we detect that it has been cleared before pushing the new slots after recreation. 

---------

Signed-off-by: Karim TAAM <karim.t2am@gmail.com>
@matthew1001 matthew1001 merged commit 54dfa7b into hyperledger:main Dec 12, 2023
18 checks passed
jflo pushed a commit to jflo/besu that referenced this pull request Dec 12, 2023
* Sequenced pool synonym for legacy pool

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Class rename

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Spotless fixes

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Add SEQUENCED to config overview test

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Update CHANGELOG.md

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>

* add a fix to load correctly the storage trie in the Bonsai WorldState (hyperledger#6205)

revert some modification that was made to pass tests hyperledger#5686 and fix this tests by loading the storage with EMPTY_TRIE_HASH if we detect that it has been cleared before pushing the new slots after recreation.

---------

Signed-off-by: Karim TAAM <karim.t2am@gmail.com>

---------

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>
Signed-off-by: Karim TAAM <karim.t2am@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: matkt <karim.t2am@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>
jflo added a commit that referenced this pull request Dec 12, 2023
* New cli options to limit rewards return by eth_feeHistory  (#6202)
* [#5851] Add error messages on authentication failures with username and password (#6212)
* Add a constant for the 'password'
* Add error messages on authentication failures with username and password

Signed-off-by: Justin Florentine <justin+github@florentine.us>
Signed-off-by: jflo <justin+github@florentine.us>
Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Signed-off-by: David Lutzardo <jdlutzardo@izertis.com>



Signed-off-by: David Lutzardo <jdlutzardo@izertis.com>

* Add test to check empty login and check response in body is not empty

Signed-off-by: David Lutzardo <jdlutzardo@izertis.com>

* Correct format (spotless)

Signed-off-by: David Lutzardo <jdlutzardo@izertis.com>

* Update ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/JsonRpcHttpServiceLoginTest.java

Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: David Lutzardo <jdlutzardo@izertis.com>

* Update ethereum/api/src/test/java/org/hyperledger/besu/ethereum/api/jsonrpc/JsonRpcHttpServiceLoginTest.java

Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: David Lutzardo <jdlutzardo@izertis.com>

* Update JsonRpcHttpServiceLoginTest.java

use containsIgnoringCase

Signed-off-by: David Lutzardo <jdlutzardo@izertis.com>

* Add a CHANGELOG entry for PR 6212

Signed-off-by: David Lutzardo <jdlutzardo@izertis.com>

---------

Signed-off-by: David Lutzardo <jdlutzardo@izertis.com>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: jflo <justin+github@florentine.us>

* Add RockDB Subcommand for printing usage per column family (#6185)

* Add RockDB Subcommand for printing usage per column family
Signed-off-by: Simon Dudley <simon.dudley@consensys.net>

* changed output to follow a MD table notation.

Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>

---------

Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* Deprecation warning if Forest pruning is enabled (#6230)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: jflo <justin+github@florentine.us>

* Fix the annoying "Errors occurred while build effective model" during builds (#6241)

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: jflo <justin+github@florentine.us>

* Run ATs sequentially (#6244)

Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* fix: double calls to trace{Start,End}Transaction (#6247)

Signed-off-by: delehef <franklin.delehelle@odena.eu>
Signed-off-by: jflo <justin+github@florentine.us>

* migrate to junit5 (#6234)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* fixes for problems discovered in main (#6248)

Signed-off-by: garyschulte <garyschulte@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* Pki - migrate to junit 5 (#6235)

* migrate to junit5

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* fix: double calls to trace{Start,End}Transaction (#6247)

Signed-off-by: Franklin Delehelle <franklin.delehelle@odena.eu>

* migrate to junit5 (#6234)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* fixes for problems discovered in main (#6248)

Signed-off-by: garyschulte <garyschulte@gmail.com>

* fixed test comparing size of collection

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Franklin Delehelle <franklin.delehelle@odena.eu>
Signed-off-by: garyschulte <garyschulte@gmail.com>
Co-authored-by: delehef <franklin.delehelle@odena.eu>
Co-authored-by: garyschulte <garyschulte@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* junit 5 ftw (#6253)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* removed unnecessary use of static temp dir  (#6251)

* don't use static tempdir

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* Remove parallelism usage from mainnet AT (#6252)

* Remove parallelism usage from mainnet AT

Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>

* Increase parallelism usage from mainnet AT

Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>

* Add the split command back

Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>

---------

Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* fix log params (#6254)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: Stefan Pingel <16143240+pinges@users.noreply.github.com>
Signed-off-by: jflo <justin+github@florentine.us>

* add dependency on jar task (#6255)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* Fix and test that the BlockAwareOperationTracer methods are invoked the correct number of times (#6259)

* Test that the BlockAwareOperationTracer are invoked the correct number of times
* Remove redundant calls to traceEndBlock

Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: jflo <justin+github@florentine.us>

* [RPC] Use apiConfiguration to limit gasPrice in eth_getGasPrice (#6243)

Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Signed-off-by: jflo <justin+github@florentine.us>

* log bootnodes and static nodes list at debug level (#6273)

* log bootnodes and static nodes list at debug level

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* log if zero bootnodes

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

* null safeguards

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* junit 5 (#6256)

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* Non bft group ats junit 5 (#6260)

* migrate to junit 5

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* Txparse subcommand implementation (#6268)

* txparse subcommand

Signed-off-by: garyschulte <garyschulte@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* [MINOR] migrate remaining Crypto tests to junit 5 (#6280)

* update crypto tests to junit5

* fixed temp file

* removed vintage junit dep

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>

---------

Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* add a fix to load correctly the storage trie in the Bonsai WorldState (#6205)

revert some modification that was made to pass tests #5686 and fix this tests by loading the storage with EMPTY_TRIE_HASH if we detect that it has been cleared before pushing the new slots after recreation.

---------

Signed-off-by: Karim TAAM <karim.t2am@gmail.com>
Signed-off-by: matkt <karim.t2am@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* Sequenced pool synonym for legacy pool (#6274)

* Sequenced pool synonym for legacy pool

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Class rename

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Spotless fixes

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Add SEQUENCED to config overview test

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Update CHANGELOG.md

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>

* add a fix to load correctly the storage trie in the Bonsai WorldState (#6205)

revert some modification that was made to pass tests #5686 and fix this tests by loading the storage with EMPTY_TRIE_HASH if we detect that it has been cleared before pushing the new slots after recreation.

---------

Signed-off-by: Karim TAAM <karim.t2am@gmail.com>

---------

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>
Signed-off-by: Karim TAAM <karim.t2am@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: matkt <karim.t2am@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* ETC mainnet 'Spiral' activation block (#6267)

* Set ENR tree for DNS discovery for ETC mainnet network

Signed-off-by: Diego López León <dieguitoll@gmail.com>

* Set activation block number for ECIP-1109 on ETC mainnet

Signed-off-by: Diego López León <dieguitoll@gmail.com>

---------

Signed-off-by: Diego López León <dieguitoll@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>

* uprev to version 23.10.3-RC3

Signed-off-by: jflo <justin+github@florentine.us>

---------

Signed-off-by: Justin Florentine <justin+github@florentine.us>
Signed-off-by: jflo <justin+github@florentine.us>
Signed-off-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Signed-off-by: David Lutzardo <jdlutzardo@izertis.com>
Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Signed-off-by: delehef <franklin.delehelle@odena.eu>
Signed-off-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: garyschulte <garyschulte@gmail.com>
Signed-off-by: Franklin Delehelle <franklin.delehelle@odena.eu>
Signed-off-by: Karim TAAM <karim.t2am@gmail.com>
Signed-off-by: matkt <karim.t2am@gmail.com>
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>
Signed-off-by: Diego López León <dieguitoll@gmail.com>
Co-authored-by: Gabriel-Trintinalia <gabriel.trintinalia@consensys.net>
Co-authored-by: David Lutzardo <jdlutzardo@izertis.com>
Co-authored-by: Fabio Di Fabio <fabio.difabio@consensys.net>
Co-authored-by: Simon Dudley <simon.dudley@consensys.net>
Co-authored-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
Co-authored-by: delehef <franklin.delehelle@odena.eu>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: garyschulte <garyschulte@gmail.com>
Co-authored-by: Stefan Pingel <16143240+pinges@users.noreply.github.com>
Co-authored-by: matkt <karim.t2am@gmail.com>
Co-authored-by: Matt Whitehead <matthew1001@gmail.com>
Co-authored-by: Diego López León <dieguitoll@gmail.com>
@alexandratran alexandratran removed the doc-change-required Indicates an issue or PR that requires doc to be updated label Dec 12, 2023
gfukushima pushed a commit to gfukushima/besu that referenced this pull request Dec 15, 2023
* Sequenced pool synonym for legacy pool

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Class rename

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Spotless fixes

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Add SEQUENCED to config overview test

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Update CHANGELOG.md

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>

* add a fix to load correctly the storage trie in the Bonsai WorldState (hyperledger#6205)

revert some modification that was made to pass tests hyperledger#5686 and fix this tests by loading the storage with EMPTY_TRIE_HASH if we detect that it has been cleared before pushing the new slots after recreation. 

---------

Signed-off-by: Karim TAAM <karim.t2am@gmail.com>

---------

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>
Signed-off-by: Karim TAAM <karim.t2am@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: matkt <karim.t2am@gmail.com>
gfukushima pushed a commit to gfukushima/besu that referenced this pull request Dec 15, 2023
* Sequenced pool synonym for legacy pool

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Class rename

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Spotless fixes

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Add SEQUENCED to config overview test

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Update CHANGELOG.md

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>

* add a fix to load correctly the storage trie in the Bonsai WorldState (hyperledger#6205)

revert some modification that was made to pass tests hyperledger#5686 and fix this tests by loading the storage with EMPTY_TRIE_HASH if we detect that it has been cleared before pushing the new slots after recreation.

---------

Signed-off-by: Karim TAAM <karim.t2am@gmail.com>

---------

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>
Signed-off-by: Karim TAAM <karim.t2am@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: matkt <karim.t2am@gmail.com>
Signed-off-by: Gabriel Fukushima <gabrielfukushima@gmail.com>
jflo pushed a commit to jflo/besu that referenced this pull request Dec 18, 2023
* Sequenced pool synonym for legacy pool

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Class rename

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Spotless fixes

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Add SEQUENCED to config overview test

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>

* Update CHANGELOG.md

Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>

* add a fix to load correctly the storage trie in the Bonsai WorldState (hyperledger#6205)

revert some modification that was made to pass tests hyperledger#5686 and fix this tests by loading the storage with EMPTY_TRIE_HASH if we detect that it has been cleared before pushing the new slots after recreation.

---------

Signed-off-by: Karim TAAM <karim.t2am@gmail.com>

---------

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>
Signed-off-by: Karim TAAM <karim.t2am@gmail.com>
Co-authored-by: Sally MacFarlane <macfarla.github@gmail.com>
Co-authored-by: matkt <karim.t2am@gmail.com>
Signed-off-by: jflo <justin+github@florentine.us>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add a new synonym for the legacy transaction pool
4 participants