This PR is a small improvement on eth_sendRawTransaction, as it notifies the listeners on added transactions asynchronously.
The PR also pre-calculates the sender of the transaction which is more a mitigation of the synchronized on LayeredPendingTransactions.addTransaction, the sender can be calculated by one the thread of ForkjoinPool.commonPool while the main thread is locking on syncronized.
Fixed Issue(s)
Thanks for sending a pull request! Have you done the following?
PR description
This PR is a small improvement on eth_sendRawTransaction, as it notifies the listeners on added transactions asynchronously. The PR also pre-calculates the sender of the transaction which is more a mitigation of the synchronized on
LayeredPendingTransactions.addTransaction
, the sender can be calculated by one the thread of ForkjoinPool.commonPool while the main thread is locking on syncronized.Fixed Issue(s)
Thanks for sending a pull request! Have you done the following?
doc-change-required
label to this PR if updates are required.Locally, you can run these tests to catch failures early:
./gradlew build
./gradlew acceptanceTest
./gradlew integrationTest
./gradlew ethereum:referenceTests:referenceTests