-
Notifications
You must be signed in to change notification settings - Fork 3.7k
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
Loader fixes #15285
base: main
Are you sure you want to change the base?
Loader fixes #15285
Conversation
⏱️ 3h 1m total CI duration on this PR
🚨 1 job on the last run was significantly faster/slower than expected
|
0f7f5b2
to
3b8ce5c
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
enum ModuleRead<DC, VC, S> { | ||
/// Read from the cross-block module cache. | ||
GlobalCache, | ||
GlobalCache(Arc<ModuleCode<DC, VC, S>>), | ||
/// Read from per-block cache ([SyncCodeCache]) used by parallel execution. | ||
PerBlockCache(Option<(Arc<ModuleCode<DC, VC, S>>, Option<TxnIndex>)>), |
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.
can you explain why do we distinguish reads here based on where we got the data from? also what is Option<TxnIndex>
in the PerBlockCache ?
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.
Option - module does not exist (in StateView even).
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.
Different reads - different validations. We need to check that global reads are still valid, and per-block reads have the same version
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.
stupid formatting, didn't show I was referring to TxnIndex
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.
Ah - None is a storage version
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 find it better than Result<TxnIndex, StorageVersion>
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.
why distinction between storage version and global cache?
✅ Forge suite
|
✅ Forge suite
|
Description
How Has This Been Tested?
Key Areas to Review
Type of Change
Which Components or Systems Does This Change Impact?
Checklist