Description
Internal/External
External
Area
Other
Describe the feature you'd like
Drastic reduction of time needed for verification of on-disk blockchain state
Describe alternatives you've considered
- Parallelisation if the CPU-bound parts of the verification process
- Checksum-based checkpoints to skip through full verification of the full on-disk blockchain copy
Additional context / screenshots
For quite some time, using Daedalus, that Electron client will frequently revert back to the semblance of the start-up screen, with the point "Verifying on-disk blockchain state" showing 99.something percent, "Replaying ledger from on-disk blockchain" showing a low percentage, and "Syncing blockchain" showing 0.00%.
Remedy is restart of cardano-node.
This will, of course, trigger a verification of the on-disk blockchain state, which, on my system, pegs a single CPU core to 100%, but only reads from disk in "bursts" of between ~5MB/s to ~35MB/s, and the process takes several hours to complete.
Since a single core is utilised to 100%, and disk read speeds are low, it must be possible to parallelise parts of whatever it does, and it should also be possible to avoid actually reading the whole shebang on each (re-) start.