Closed yeastplume closed 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.
Merged, thanks for review!
Review Version:
croaring::Bitmap
from the read bitmap segments for use in output/rangeproof segment validation.chain::remove_historical_blocks
is greater than the horizon expected by the segmentercroaring::Bitmap
for segment validation.SegmentIdentifier
to determine the number of segments that would need to be requested given the target pmmr size and the desired segment height.---- 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:
chain
crate, a small but 'real' transaction hash set with real transaction data generated via a wallet test (will commit that test separately to grin_wallet). (Yes, I'm adding static binary data to the repository for the purposes of testing PIBD/PMMR segmentation. Never ideal but much better than the nothing we currently have).Next up:
Don't forget: