Open
Description
During chunk production transaction signatures are verified sequentially (called from here) on the critical path. To get that work off the critical path, add a second pool containing only transactions for which the signature has been verified.
High level overview
Assume the pool is called SigVerifiedPool
:
- A node receives a transaction.
- After it's checks excluding signature verification have passed, it sends the transaction to
SigVerifiedPool
. SigVerifiedPool
continuously runs signature verification on a dedicated thread and rejects transactions with invalid signature.- A CP interacts with
SigVerifiedPool
and then can skip signature verification during chunk production.
To consider
- Make sure all transactions are sent to
SigVerifiedPool
or add a mechanism forSigVerifiedPool
to pull in transactions. - Under high load, more than one thread might be required to verify signatures fast enough.
- Are there opportunities to skip signature verification in other places too by interacting with
SigVerifiedPool
?
Metadata
Metadata
Assignees
Labels
No labels