IntersectMBO / IntersectMBO/ouroboros-consensus
Chain DB: evaluate ledger-state independent parts of blocks separately
- Dominant language
- Haskell
- Stars
- 67
- Forks
- 43
- Avg merge
- 5d 13h
- Merged PRs (30d)
- 43
Description
This ticket is the analogue of input-output-hk/ouroboros-consensus#743, but for the Chain DB: we could parallelize the validation of cryptographic signatures etc by doing the ledger-state independent parts of blocks first.
For the Chain DB, this has an additional advantage: blocks in the volatile DB are not validated _at all_; they are only validated as part of chain selection. If we separate this out, we could do the cryptographic checks ahead of time and remember this (I think this would then _replace_ `varPrevApplied` in `LgrDB`, since apart from crryptographic signatures, I don't think there is any value in knowing that a block was previously applied without remembering the resulting state).
Contributor guide
Assessment
This issue has not been assessed yet.