Use TransactionPool notification stream in pusbub
#412
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In
Kind::NewPendingTransactions, current approach of subscribing to storage changes t is not good for many reasons, and will lead to problems because:pallet-ethereum::Pendingdata is appended when the transact dispatchable is actually dispatched, not when the unsigned extrinsic is preliminarily added to the pool. The pending transaction WS subscription is supposed to notify the subscriber when the transaction is in the ready queue, not when whatever we do in pallet-ethereum.Instead we want to:
TransactionPoolnotifications. Internally this will use theValidatedPoolto get transactions that are on the ready queue.TxHash, which we can use to get the extrinsic.ethereum::Transaction).Then hash it as we do now and notify the subscriber.
Note
This includes some duplicated code (runtime api method) with #403 to illustrate how it works, it will be fused once one of them goes through.