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

Add new PoA network option to use bootnodes during any peer table refresh, not just the first one #7314

Merged
merged 6 commits into from
Jul 23, 2024

Conversation

matthew1001
Copy link
Contributor

@matthew1001 matthew1001 commented Jul 12, 2024

PR description

This PR adds the option (in PoA networks only) to query the bootnodes whenever the peer table is being refreshed.

The behaviour today is that the bootnodes are queried on first startup, but if no peers are found on that occasion Besu will not use the bootnode again until it is restarted.

The new option is on by default. Setting --poa-discovery-retry-bootnodes=false disables it.

Locally, you can run these tests to catch failures early:

  • unit tests: ./gradlew build
  • acceptance tests: ./gradlew acceptanceTest
  • integration tests: ./gradlew integrationTest
  • reference tests: ./gradlew ethereum:referenceTests:referenceTests

… not just the first one

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
@matthew1001 matthew1001 changed the title Add new config option to use bootnodes during any peer table refresh, not just the first one Add new PoA network option to use bootnodes during any peer table refresh, not just the first one Jul 12, 2024
matthew1001 and others added 2 commits July 12, 2024 18:00
Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
@matthew1001 matthew1001 marked this pull request as ready for review July 15, 2024 09:19
Copy link
Contributor

@pinges pinges left a comment

Choose a reason for hiding this comment

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

I have added one suggestion. Otherwise LGTM.

…iscovery/internal/PeerDiscoveryController.java

Co-authored-by: Stefan Pingel <16143240+pinges@users.noreply.github.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>
@matthew1001 matthew1001 enabled auto-merge (squash) July 23, 2024 07:38
@matthew1001 matthew1001 merged commit 7e4a25a into hyperledger:main Jul 23, 2024
40 checks passed
gconnect pushed a commit to gconnect/besu that referenced this pull request Aug 26, 2024
…resh, not just the first one (hyperledger#7314)

* Add new config option to use bootnodes during any peer table refresh, not just the first one

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

* Update everything-config list

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

* Revert debug setting

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

* Update ethereum/p2p/src/main/java/org/hyperledger/besu/ethereum/p2p/discovery/internal/PeerDiscoveryController.java

Co-authored-by: Stefan Pingel <16143240+pinges@users.noreply.github.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>

---------

Signed-off-by: Matthew Whitehead <matthew1001@gmail.com>
Signed-off-by: Matt Whitehead <matthew1001@hotmail.com>
Co-authored-by: Stefan Pingel <16143240+pinges@users.noreply.github.com>
Signed-off-by: gconnect <agatevureglory@gmail.com>
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.

2 participants