Closed gurukamath closed 2 months ago
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 74.72%. Comparing base (
bf47143
) to head (d663e77
). Report is 65 commits behind head on forks/cancun.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
@SamWilsn once you rebase the statetest
branch to include this, I can fuzz it again and see if it holds up
LGTM!
@gurukamath could you explain a bit about the circumstances here? The original testcase was pretty messy, building a very deeply nested calltree. I'm trying to make a canonical testcase for this (https://github.com/holiman/goevmlab/pull/140) , but would appreciate some guidance.
@gurukamath could you explain a bit about the circumstances here? The original testcase was pretty messy, building a very deeply nested calltree. I'm trying to make a canonical testcase for this (holiman/goevmlab#140) , but would appreciate some guidance.
I believe the case is of the following
A
does a tstore
a value and and tries to create B
using CREATE/CREATE2B
fails because len(contract_code) > MAX_CODE_SIZE
A
then tries to tload
the same value as in step 1.sstore
then stores this value from tload
(closes #917 )
What was wrong?
process_create_message
did not create the right snapshots for rollback in case something went wrong.Related to Issue #917
How was it fixed?
Add
transient_storage
toEnvironment
and create appropriate snapshots.Cute Animal Picture