mirror of https://github.com/hyperledger/besu
An enterprise-grade Java-based, Apache 2.0 licensed Ethereum client https://wiki.hyperledger.org/display/besu
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Tag:
Branch:
Tree:
fa0e9eb556
23.4.4-branch
4844-devnet-5b
5561migrate-tests-to-Junit5
CloseServerSocket
TransactionValidatorService
add-peer-dns
besu-for-fleet
bump_web3j
eip-4844-interop
github_ci
main
mega-eof
pectra-devnet-4
pectra-devnet3-block-110500-issue
reduceRetries
release-23.1.x
release-23.10.2
release-23.10.3
release-23.10.x
release-23.4.x
release-23.7.x
release-24.1.1
release-24.1.2
release-24.1.x
release-24.2.0
release-24.3.0-hotfix
release-24.3.2-hotfix
release-24.3.3-hotfix
release-24.4.0
release-24.5.0-rc1
release-24.5.0-rc2
release-24.5.3
release-24.7.0
revert-7203-patch-1
revert-7586-fixCHANGELOGtypo
sally-delete-me-2
sally-delete-me-testing-rules
sonarTour
tag-24.3.2
tessera_as_internal_process
test-dco1
test-dco2
test-dco3
verkle
0.8.0
0.8.0-RC1
0.8.0-RC2
0.8.1
0.8.2
0.8.3
0.8.4
0.8.5
0.9.0
0.9.1
1.0.0
1.0.0-RC1
1.0.1
1.0.2
1.0.3
1.1.0
1.1.0-RC1
1.1.1
1.1.2
1.1.3
1.1.4
1.2.0
1.2.0-RC1
1.2.1
1.2.2
1.2.3
1.2.4
1.3.0
1.3.0-RC1
1.3.1
1.3.2
1.3.3
1.3.4
1.3.5
1.3.6
1.3.7
1.3.8
1.3.9
1.4.0
1.4.0-RC1
1.4.0-RC2
1.4.0-beta1
1.4.0-beta2
1.4.0-beta3
1.4.1
1.4.2
1.4.3
1.4.4
1.4.5
1.4.5-RC1
1.4.5-RC2
1.4.5-RC3
1.4.6
1.4.6-RC1
1.4.6-RC2
1.5.0
1.5.0-RC1
1.5.0-RC2
1.5.0-RC3
1.5.1
1.5.1-RC1
1.5.2
1.5.3
1.5.4
1.5.5
1626082128492
1626086821182
20.10.0
20.10.0-RC1
20.10.0-RC2
20.10.1
20.10.2
20.10.3
20.10.4
21.1.0
21.1.0-RC1
21.1.0-RC2
21.1.1
21.1.2
21.1.3
21.1.4
21.1.5
21.1.6
21.1.7
21.10.0
21.10.0-RC1
21.10.0-RC2
21.10.0-RC3
21.10.0-RC4
21.10.1
21.10.2
21.10.3
21.10.4
21.10.5
21.10.6
21.10.7
21.10.8
21.10.9
21.2.0-RC1
21.7.0
21.7.0-RC1
21.7.0-RC2
21.7.1
21.7.2
21.7.3
21.7.4
22.1.0
22.1.0-RC1
22.1.0-RC2
22.1.0-RC3
22.1.0-RC4
22.1.1
22.1.2
22.1.3
22.10.0
22.10.0-RC1
22.10.0-RC2
22.10.1
22.10.101
22.10.2
22.10.3
22.12.8.1
22.12.8.2
22.12.8.3
22.12.8.4
22.4.0
22.4.0-RC1
22.4.0-RC2
22.4.1
22.4.2
22.4.3
22.4.4
22.7.0
22.7.0-RC1
22.7.0-RC2
22.7.0-RC3
22.7.1
22.7.2
22.7.3
22.7.4
22.7.5
22.7.6
22.7.7
23.1.0
23.1.0-BETA
23.1.0-RC1
23.1.0-RC2
23.1.1
23.1.1-RC1
23.1.100
23.1.2
23.1.3
23.10.0
23.10.1
23.10.2
23.10.3
23.10.3-hotfix
23.4.0
23.4.0-RC1
23.4.1
23.4.2
23.4.3
23.4.4
23.7.0
23.7.1
23.7.2
23.7.3
24.1.0
24.1.1
24.1.2
24.10.0
24.10.0-RC1
24.10.0-RC2
24.2.0
24.2.0-RC1
24.2.0-RC2
24.2.0-RC3
24.2.0-RC4
24.3.0
24.3.0-hotfix
24.3.1
24.3.2
24.3.3
24.4.0
24.4.0-RC1
24.4.0-RC2
24.4.0-RC3
24.5.0
24.5.0-RC1
24.5.1
24.5.2
24.5.2-RC0
24.5.2-RC1
24.5.3
24.5.4
24.6.0
24.6.0-RC1
24.6.0-RC2
24.7.0
24.7.0-RC1
24.7.1
24.7.1-RC1
24.8.0
24.8.0-RC1
24.9.0
24.9.0-RC1
24.9.0-RC2
24.9.1
24.9.1-RC1
GHA-TESTRUN-1
GHA.TESTRUN.1
canary
dev
develop
${ noResults }
Fabio Di Fabio
6c179ba596
Currently Besu has a limited support for sending NewPooledTransactionHashes messages, and other aspect related to reduce transactions synchronization traffic, described in the Ethereum Wire Protocol version 66. Specifically: Besu only uses NewPooledTransactionHashes for new local transactions, while it could be extended to any transaction added to the transaction pool Besu does not limit the sending of the full transaction messages to a small fraction of the connected peers, and sends the new transaction hashes to all the remaining peers This PR, extends eth/66 support and does some code refactoring, to remove some reduntant code and rename some classes to identify they are related to the NewPooledTransactionHashes message. The main changes are: Do not have a separate tracker for transaction hashes, since for them we can reuse PeerTransactionTracker, that tracks full transactions exchange history and sending queue with a peer. So PeerPendingTransactionTracker has been removed. --tx-pool-hashes-max-size is now deprecated and has no more effect and it will be removed in a future release. When a new peer connects, if it support eth/6[56] then we send all the transaction hashes we have in the pool, otherwise we send the full transactions. When new transactions are added to the pool, we send full transactions to peers without eth/6[56] support, or to a small fractions of all peers, and then we send only transaction hashes to the remaining peer that support eth/6[56]. Both transactions and transaction hashes are only sent if not already exchanged with that specific peer. Signed-off-by: Fabio Di Fabio <fabio.difabio@consensys.net> |
3 years ago | |
---|---|---|
.. | ||
src | Improve eth/66 support (#3616) | 3 years ago |
build.gradle | Vert.x upgrade (with tests) (#3135) | 3 years ago |