reth icon indicating copy to clipboard operation
reth copied to clipboard

Ensure peer receives all new transactions

Open mattsse opened this issue 1 year ago • 0 comments

Describe the feature

transactions are broadcasted to sqrt(peercount) and either broadcasted as hashes or full:

https://github.com/paradigmxyz/reth/blob/e49f173f198aff4a38b4ad89aa67aceef94ceae7/crates/net/network/src/transactions/mod.rs#L459-L459

however for full txs there are size limits in place:

https://github.com/paradigmxyz/reth/blob/e49f173f198aff4a38b4ad89aa67aceef94ceae7/crates/net/network/src/transactions/mod.rs#L1411-L1411

so depending on total size of the unseen txs, the full broadcast is truncated and 4844 transactions are also not sent to that peer because they're excluded from the full broadcast.

TODO

  • in case the full transactions are truncated or a new 4844 is seen, also announce the other transactions as a separate newpooledtxhashes message to that peer so it receives all new txs including 4844 as hash or in full

This should be done by also recording the hashes that don't fit:

https://github.com/paradigmxyz/reth/blob/1d83d14e8d096cfc8cc4ac12fd1ddaa4bacc089b/crates/net/network/src/transactions/mod.rs#L1409-L1413

and also add 4844 hashes

Additional context

No response

mattsse avatar Aug 09 '24 13:08 mattsse