mimblewimble / grin

Minimal implementation of the Mimblewimble protocol.
https://grin.mw/
Apache License 2.0
5.04k stars 989 forks source link

[PIBD] Chain Segmenter Validation Test + Block Archive Horizon Change #3665

Closed yeastplume closed 2 years ago

yeastplume commented 2 years ago

Review Version:

---- Old Version of this ----

Snapshot of current explorations into PIBD, note this PR in its current state is more an attempt at understanding and starting to put together tests to exercise the the PIBD segmenter and segment validation. The current goal is to get an entire compressed/pruned hashset 'copied' locally via PIBD functions, and once this is in place (with sufficient unit tests exercising all of the PIBD PMMR work done to date,) we can start thinking about the actual sync process.

Thus far:

Next up:

Don't forget:

yeastplume commented 2 years ago

Top comment updated, ready for review. This mostly adds segmenter tests against live data which should also serve as a reference for how peers would call and validate data from other peers. HOWEVER there is a change to archive thresholds that needs review + thought.

Next up would be functionality + further tests that recreate hash set data from read segments.

yeastplume commented 2 years ago

Merged, thanks for review!