Improve node startup time
Open
store
- Dominant language
- Rust
- Stars
- 104
- Forks
- 138
- Avg merge
- 1d 13h
- Merged PRs (30d)
- 56
Description
Recent testnet restarts took ~21s, of which 15s was `load_mmr` and 4s `load_smt_forest`.
`load_mmr` is likely dominated by reading all block headers from the database. However, we don't actually need the entire header -- only the ordered commitments. We can improve this by storing the header fields as columns. At minimum we should store the commitment in its own field, even if we decide to keep the headers as blobs for performance in other areas.
I would also take a look at what else we are using the headers for; if there is other usage where we only require partial fields then we should consider flattening it completely.
Contributor guide
Assessment
This issue has not been assessed yet.