IntersectMBO / IntersectMBO/ouroboros-consensus

Chain DB: evaluate ledger-state independent parts of blocks separately

Open
#693 0 comments 0 reactions 0 assignees View on GitHub
🏎️ performance
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

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.