Skip to content
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

Extra stateroot during statetest execution confuses fuzzer #1977

Open
holiman opened this issue Jan 7, 2025 · 0 comments
Open

Extra stateroot during statetest execution confuses fuzzer #1977

holiman opened this issue Jan 7, 2025 · 0 comments
Labels
bug Something isn't working good first issue Good for newcomers

Comments

@holiman
Copy link

holiman commented Jan 7, 2025

With a recent revm (built today):

root@f4a2fba9f9eb:/testdata# /revme statetest --json ./cases/00000006-naivefuzz-0.json  1>/dev/null 
...
{"pc":2620,"op":0,"gas":"0x13a6","gasCost":"0x0","stack":[],"depth":1,"returnData":"0x","refund":"0x0","memSize":"2240","opName":"STOP"}
{"stateRoot":"0x0000000000000000000000000000000000000000000000000000000000000000","output":"0x","gasUsed":"0xb8665","pass":true,"fork":"London"}
{"stateRoot":"0xad1024c87b5548e77c937aa50f72b6cb620d278f4dd79bae7f78f71ff75af458","logsRoot":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","output":"0x","gasUsed":755301,"pass":false,"errorMsg":"logs root mismatch: got 0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347, expected 0x0000000000000000000000000000000000000000000000000000000000000000","evmResult":"Success: Stop","postLogsHash":"0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347","fork":"LONDON","test":"00000006-naivefuzz-0","d":0,"g":0,"v":0}
Statetest(TestError { name: "00000006-naivefuzz-0", path: "./cases/00000006-naivefuzz-0.json", kind: LogsRootMismatch { got: 0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347, expected: 0x0000000000000000000000000000000000000000000000000000000000000000 } })
Error: Statetest(TestError { name: "00000006-naivefuzz-0", path: "./cases/00000006-naivefuzz-0.json", kind: LogsRootMismatch { got: 0x1dcc4de8dec75d7aab85b567b6ccd41ad312451b948a7413f0a142fd40d49347, expected: 0x0000000000000000000000000000000000000000000000000000000000000000 } })

The fuzzer only 'sees' the first 0x00..-stateroot, and thus finds false-positive consensus issues.

@rakita rakita added bug Something isn't working good first issue Good for newcomers labels Jan 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working good first issue Good for newcomers
Projects
None yet
Development

No branches or pull requests

2 participants