-
Notifications
You must be signed in to change notification settings - Fork 115
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Transaction scheduler should use CheckTx #1963
Comments
Currently the runtime checks are cheap (https://github.com/oasislabs/runtime-ethereum/blob/9847c5359d04a6ea423739f70f2f511ea37dbf66/src/methods.rs#L27):
|
The checks also need to make sure that there is enough balance to pay for gas in case the transaction is reverted due to a mismatched predicted read/write set (see #2012 (comment)). |
As discussed the CheckTx API should be extended so that the return value includes additional metadata (e.g., predicted read/write sets for the transaction). The existing way of transporting read/write sets should be cleaned up. |
Performing CheckTx should be a node configuration parameter so it can be disabled if needed. |
As of #1555 the runtime exposes a CheckTx API for verifying incoming transactions but this is currently unused. The transaction scheduler should use the API to reject incoming transactions early instead of submitting them through the processing pipeline.
The runtime must ensure that any such checks are cheap enough that they can be performed quickly and not become a bottleneck of the whole pipeline.
Estimated cost: 1 sprint
The text was updated successfully, but these errors were encountered: