-
Notifications
You must be signed in to change notification settings - Fork 21k
Block access list changes - BAL construction, execution and validation #32263
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
base: master
Are you sure you want to change the base?
Conversation
A lot of the comments in the code are straight-up wrong/misleading. There's a lot of notes/reminders I made as I was implementing this, and not all of them have been removed/corrected at this point. |
I've pushed parallel execution changes here. Still failing 2 tests (other than modexp repricing ones which will be fixed with a rebase on master):
I've been trying to debug these but it's proving to be exceedingly difficult with the parallel execution enabled. The tests seem to relate to behavior of some system contracts on the fork boundaries, so I will just proceed with gathering numbers on mainnet performance for the meantime. |
69a645d
to
ab1c562
Compare
…hen enabled, post-Cancun blocks which lack access lists will have them constructed on execution during import. When importing blocks which contain access lists, transaction execution and state root calculation is performed in parallel.
ab1c562
to
8f200db
Compare
Broke the block count on the insertion log statement here. Will try to fix tomorrow. |
…ved from BALs, there's not much gain from having a BAL state prefetcher
WIP. currently passes blockchain spec tests (tests that make use of balances >16 bytes are excluded).
Change summary:
--experimentalbal
is enabled:Deviations from EIP-7928:
txindex=0
correspond to state reads/changes which occur from system contract execution before transactions.txindx=1..len(block.transactions)
correspond to state reads/changes occurring for each transaction.txindex=len(block.transactions)+1
correspond to the post-block system contracts and EIP-4895 withdrawals.TODO: