-
Notifications
You must be signed in to change notification settings - Fork 356
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
Test 🧪: add accessList gas cost tests #3134
Conversation
WASM runtime size check:Compared to target branchMoonbase runtime: 2420 KB (no changes) 🚨 Moonbeam runtime: 2404 KB (no changes) 🚨 Moonriver runtime: 2392 KB (no changes) ✅ Compared to latest release (runtime-3401)Moonbase runtime: 2420 KB (+388 KB compared to latest release) 🚨 Moonbeam runtime: 2404 KB (+392 KB compared to latest release) 🚨 Moonriver runtime: 2392 KB (+380 KB compared to latest release) |
Coverage Report@@ Coverage Diff @@
## master pablo/access-list-test +/- ##
=========================================================
Coverage 74.59% 74.59% 0.00%
Files 380 380
Lines 96029 96029
=========================================================
Hits 71632 71632
Misses 24397 24397
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, just few nits
What does it do?
This PR adds test for 3 cases related to the
accessList
transaction field introduced in EIP-2930 and implemented through theevm
pallet in order to confirm that the field does not present an attack vector for Moonbeam networks. In Moonbeam tho, behavior is somewhat different from the expected for the first 4 addresses and storage keys added to the access list of a transaction; costing less than expected.Cases are the following:
Is there something left for follow-up PRs?
While working on these tests it was detected that transactions using the
accessList
field cost more gas that those without it, even when reusing the same storage and addresses multiple times. This means the feature does not work as expected as it is meant to allow users to save some gas by pre-warming the storage they will access.