-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
eth, trie/triedb/pathdb: pbss patches #1955
Conversation
d8a631f
to
cea8fa4
Compare
1.DefaultDirtyBufferSize 64MB, it is conflicted with the current cache allocation, which allocate 25% cache to dirty cache by default. |
PBSS nodebuffer will aggregate the nodes of multiple difflayers together, so the nodebuffer will be written in one batch, so it should not be too large. MaxDirtyBufferSize and DefaultDirtyBufferSize are both verified and considered values. |
4c80518
to
becbe8f
Compare
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
* fix: use the top root hash for rewinding under path schema * feat: add async flush nodebuffer in path schema * chore: add prun-block param suffix check * fix: code review comments
Description
This PR fixes the stability and performance of PBSS, opt the add asyncnodebuffer option for flushing disk(it non-block state commit), fix rewind root hash mismatch.
Rationale
Example
--pathdb.sync
use the origin nodebuffer, the defaulte use the asyncnodebuffer.Changes
Notable changes: