iri icon indicating copy to clipboard operation
iri copied to clipboard

Map origin neighbours in solidification queue

Open DyrellC opened this issue 5 years ago • 0 comments

Description

In PR #1646 the TransactionSolidifier uses a queue of hashes with no reference to the originating neighbour. When the transactions make it through the solidification processing, they are broadcast, but since we do not know the source of the milestone transaction, we broadcast to all neighbours, including the one that sent the transaction in the first place. These transfers to the originating node serve no purpose and use up bandwidth.

As all transactions placed into the queue are added through the milestone solidification process, there is no originating source for the neighbour information to be drawn from and passed forward through the pipeline. This changes with the introduction of the milestone stage in PR #1696. With this stage we would be placing milestones into the solidification process directly from the TransactionProcessingPipeline. From here we could map the transactions to the originating neighbour and avoid broadcasting the milestones and all subsequently solidified transactions to the originating source of the milestone.

Motivation

Stop broadcasting transactions to neighbours that sent them in the first place after they have been solidified.

Requirements

  • [ ] Transactions placed into the TransactionSolidifier are mapped to their originating neighbour
  • [ ] Transactions processed through the TransactionSolidifier do not broadcast to the originating neighbour

Am I planning to do it myself with a PR?

Yes. I believe this should be a part of #1696

DyrellC avatar Dec 30 '19 23:12 DyrellC