-
Notifications
You must be signed in to change notification settings - Fork 41
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
Accountsdb fuzzer is broken on main #536
Comments
@InKryption can you check this out when you get a chance? seems like it has to do with snapshot deserialization |
I believe I've figured out the culprit of the specific issue listed here, but it seems doing that then uncovers other issues. Immediate cause: sig/src/accountsdb/snapshots.zig Lines 1716 to 1722 in 23a5a99
This doesn't consider that the ExtraFields struct that comes right after can be non-EOF, meaning the len for rooted_slots instead reads the first field value of said struct:sig/src/accountsdb/snapshots.zig Lines 1329 to 1330 in 23a5a99
With this often taking on values upwards of 156_461_825_832_971_108 - which would mean about 156+ quadrillion rooted slot values, which may be a bit more memory than one would usually have on hand. Simple enough to fix this, we just need to unconditionally write those slices, simple as. Now we're somehow running into a situation where multiple accounts at different file IDs have the same slot number. |
Think we've made progress, however this one still happens sometimes:
|
Description
We get an
OutOfMemory
after a while:How to Reproduce the Bug
$ zig build fuzz -- accountsdb
Additional Context
No response
The text was updated successfully, but these errors were encountered: