-
Notifications
You must be signed in to change notification settings - Fork 4.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
Bank snapshots #3202
Bank snapshots #3202
Conversation
1c0e9a2
to
400e39c
Compare
Codecov Report
@@ Coverage Diff @@
## master #3202 +/- ##
========================================
- Coverage 81.3% 75.4% -6%
========================================
Files 129 129
Lines 19543 21537 +1994
========================================
+ Hits 15894 16245 +351
- Misses 3649 5292 +1643 |
This looks like a pretty substantial maintenance burden. Every time we add a field to anything in solana_runtime, we'll need to update some custom serialization routines? This stuff looks pretty mechanical at first glance. Think we could write a custom derive macro or something like that? https://doc.rust-lang.org/edition-guide/rust-2018/macros/custom-derive.html |
@garious that stuff is really hairy, but let me look into it. |
@sakridge, sure I can take a look. Are all the TODOs listed in this pending to be done in addition to the custom serialization comment from Greg. |
@sambley yes, that's right. |
@sambley any chance to look at bank snapshots? |
@sambley cool. thanks |
Close this one? |
AccountsDB supports a scan method that reads from storage. Here is an example. https://github.com/solana-labs/solana/blob/master/runtime/src/accounts.rs#L305 Using the latest write version for each account/fork will allow you to rebuild the index. |
ci: use macos-13 for client_targets pipeline
) (solana-labs#3207) ci: remove deprecated macos-12 image (solana-labs#3202) ci: use macos-13 for client_targets pipeline (cherry picked from commit c6e8239) Co-authored-by: Yihau Chen <[email protected]>
Problem
Full node startup is slow when many transactions have been processed.
Summary of Changes
Serialize a bunch of bank state into a snapshot and try to restore from that on boot.
TODO:
Fixes #2475