-
Notifications
You must be signed in to change notification settings - Fork 226
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Light forward sync mechanism #6515
Open
cheatfate
wants to merge
66
commits into
unstable
Choose a base branch
from
hybrid-sync
base: unstable
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
66 commits
Select commit
Hold shift + click to select a range
4ed334d
Initial commit.
cheatfate 51b95eb
Add hybrid syncing.
cheatfate 55ec036
Compilation fixes.
cheatfate 578be20
Cast custom event for our purposes.
cheatfate 5054f60
Instantiate AsyncEventQueue properly.
cheatfate 0ead347
Fix mistype.
cheatfate b7d15fe
Further research on optimistic updates.
cheatfate cd0abac
Fixing circular deps.
cheatfate 943b443
Add backfilling.
cheatfate f6acc8f
Add block download feature.
cheatfate 2b55aea
Add block store.
cheatfate ce8057d
Update backfill information before storing block.
cheatfate e604653
Use custom block verifier for backfilling sync.
cheatfate 17e8208
Skip signature verification in backfilling.
cheatfate 0f3d721
Add one more generic reload to storeBackfillBlock().
cheatfate b929a5a
Add block verification debugging statements.
cheatfate 1781285
Add more debugging
cheatfate 605dbf0
Do not use database for backfilling, part 1.
cheatfate a56e5bb
Fix for stash.
cheatfate 69b722a
Stash fixes part 2.
cheatfate 6414b83
Prepare for testing.
cheatfate afb7ba7
Fix assertion.
cheatfate 0c45eb4
Fix post-restart syncing process.
cheatfate 9149ac9
Update backfill loading log statement.
cheatfate 958bf24
Add handling of Duplicates.
cheatfate 2ad2c38
Fix store duration and block backfilled log statements.
cheatfate ca67672
Add proper syncing state log statement.
cheatfate 5c3a961
Add snappy compression to beaconchain_file.
cheatfate 946e8f2
Add blobs verification.
cheatfate 43b24a4
Add `slot` number to file structure for easy navigation over stream o…
cheatfate 3daf8f9
Change database filename.
cheatfate aeb0539
Fix structure size.
cheatfate 865992e
Add more consistency properties.
cheatfate 11f8efa
Fix checkRepair() issues.
cheatfate 1260d54
Preparation to state rebuild process.
cheatfate a7d5066
Add plain & compressed size.
cheatfate 76a5beb
Debugging snappy encode process.
cheatfate 5627c80
Add one more debugging line.
cheatfate a4d68bb
Dump blocks.
cheatfate 0364cd9
One more filedump.
cheatfate f141e58
Fix chunk corruption code.
cheatfate ce2973f
Fix detection issue.
cheatfate 6eb7b4a
Some fixes in state rebuilding process.
cheatfate f30602e
Add more clearance steps.
cheatfate 144067f
Move updateHead() back to block_processor.
cheatfate fee34fc
Fix compilation issues.
cheatfate 3db4e8b
Make code more async friendly.
cheatfate c5dceca
Fix async issues.
cheatfate 30386e9
Fix 8192 slots issue.
cheatfate 8b8d15c
Fix Future double completion issue.
cheatfate 34d7dca
Pass updateFlags to some of the core procedures.
cheatfate 870b182
Fix tests.
cheatfate bc7d5d1
Improve initial sync handling mechanism.
cheatfate f98e566
Fix checkStateTransition() performance improvements.
cheatfate 026c16e
Add some performance tuning and meters.
cheatfate b6d7fa7
Light client performance tuning.
cheatfate e270e15
Remove debugging statement.
cheatfate 071d9e5
Use single file descriptor for blockchain file.
cheatfate ad88f10
Attempt to fix LC.
cheatfate a3f6b2a
Fix timeleft calculation when untrusted sync backfilling started righ…
cheatfate 36d42ba
Workaround for `chronicles` + `results` `error` issue.
cheatfate 92c59cc
Address review comments.
cheatfate 159f1da
Address review comments part 2.
cheatfate 99ad032
Address review comments part 1.
cheatfate 30e69cd
Rebase and fix the issues.
cheatfate f3451ad
Address review comments part 3.
cheatfate File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The general idea of downloading trust-minimized data into a separate location before processing it is great.
I wonder though, is there an overlap between this format and
.era
/.erb
files?And if no, is there an advantage of using a custom format over era?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ERA files is more about static storage of limited number of blocks + state, without any need to read it from the tail.
Current file and format is made with sense that we downloading files from the head to tail and applying from tail to head.