-
Notifications
You must be signed in to change notification settings - Fork 745
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
Download checkpoint blobs during checkpoint sync #5252
Conversation
Here's some output from a manual test on prater:
This block has a single commitment
A blob exists in the store for this block with a matching commitment
|
I ran the same test using
The checkpoint block contained 5 blobs
No blobs were present in the db for this block root
|
I made a very simple update here: 47902fa just checking the checkpoint blobs we are initializing the chain with exist in the db |
Squashed commit of the following: commit a8a8121 Merge: a41d957 61aadeb Author: realbigsean <sean@sigmaprime.io> Date: Sun Feb 18 03:56:55 2024 -0500 Merge pull request #5253 from realbigsean/checkpoint-blobs-sean Checkpoint blobs sean commit 61aadeb Author: realbigsean <seananderson33@GMAIL.com> Date: Sun Feb 18 03:54:33 2024 -0500 update cli help commit 47902fa Author: realbigsean <seananderson33@GMAIL.com> Date: Sun Feb 18 03:42:16 2024 -0500 update store checkpoint sync test commit a41d957 Author: Michael Sproul <michael@sigmaprime.io> Date: Sat Feb 17 16:13:34 2024 +1100 MVP implementation (untested)
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.
this looks good to me
I'm realizing this means checkpointz doesn't work on any testnets where deneb already happened (so all of them).. I'm not sure we can merge this as is if that's the case. Maybe this PR should be updated to store blobs in the db if possible, and log a |
Yeah good point. I like your suggestion of just logging a warn if the endpoint returns 404. I can make this change in the morning (in 9h) if you like? |
Squashed commit of the following: commit a8a8121 Merge: a41d957 61aadeb Author: realbigsean <sean@sigmaprime.io> Date: Sun Feb 18 03:56:55 2024 -0500 Merge pull request #5253 from realbigsean/checkpoint-blobs-sean Checkpoint blobs sean commit 61aadeb Author: realbigsean <seananderson33@GMAIL.com> Date: Sun Feb 18 03:54:33 2024 -0500 update cli help commit 47902fa Author: realbigsean <seananderson33@GMAIL.com> Date: Sun Feb 18 03:42:16 2024 -0500 update store checkpoint sync test commit a41d957 Author: Michael Sproul <michael@sigmaprime.io> Date: Sat Feb 17 16:13:34 2024 +1100 MVP implementation (untested)
Squashed commit of the following: commit a8a8121 Merge: a41d957 61aadeb Author: realbigsean <sean@sigmaprime.io> Date: Sun Feb 18 03:56:55 2024 -0500 Merge pull request #5253 from realbigsean/checkpoint-blobs-sean Checkpoint blobs sean commit 61aadeb Author: realbigsean <seananderson33@GMAIL.com> Date: Sun Feb 18 03:54:33 2024 -0500 update cli help commit 47902fa Author: realbigsean <seananderson33@GMAIL.com> Date: Sun Feb 18 03:42:16 2024 -0500 update store checkpoint sync test commit a41d957 Author: Michael Sproul <michael@sigmaprime.io> Date: Sat Feb 17 16:13:34 2024 +1100 MVP implementation (untested)
Strong preference to not crash on blob fetch 404 errors. Assuming checkpointz is not updated before mainnet fork, violating the db invariant should only cause peers to penalize the serving node. Since users checkpointz at scatered epochs it should be a big network wide issue. Not ideal but better than crashing. |
I've pushed 2 commits to:
I've kept |
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.
Looks great!
@Mergifyio queue |
✅ The pull request has been merged automaticallyThe pull request has been merged automatically at c9702cb |
Issue Addressed
Closes:
Proposed Changes
--checkpoint-blobs
which is not required at the CLI level but will trigger an error if not supplied when necessary.beacon_chain
crate)