-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
perf: introduce moka cached state provider #12214
Conversation
d66da1a
to
29b53b1
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.
nice. follow up for trie?
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.
@Rjected sorry I overlooked this one
is this still relevant?
perf: add builders
29b53b1
to
e4d6be1
Compare
8da1c4f
to
3f81fd1
Compare
self.state_provider.proof(input, address, slots) | ||
} | ||
|
||
fn multiproof( |
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.
What's the plan for this? Also these caches should probably work across blocks too?
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.
rather than caching proofs right now, we'll send messages to the state root task, which will use a different provider to fetch + cache proofs itself for each block
We should start with intra-block caching, but for cross-block caching, we would need to apply state updates to the cache, instead of invalidating each block. Maybe we could also incorporate trie updates as well
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.
Yes exactly
Cargo.lock
Outdated
dependencies = [ | ||
"base64 0.22.1", | ||
"indexmap 2.7.0", | ||
"metrics", | ||
"metrics-util", | ||
"metrics-util 0.19.0", |
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.
I think this is a problem because it duplicates metrics, please revert or bump metrics-util locally
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.
missed this, bumping
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.
cool
Introduces a currently unused cached state provider, which uses
moka
caches, so the caches can be shared among multipleCachedStateProvider
sref #12052, #13713