-
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
Light client updates by range rpc and add LightClientHeader #3886
Conversation
The test I did for the update_ranking ef_test is a bit awkward because it doesn't follow the pattern of many of the other tests. I am comparing each update to eachother twice but with the updates in opposite order. I used a wrapper struct around bool to use the sweet sweet procedural macro for CompareFields. Let me know if you want this changed. |
888d484
to
5bc9085
Compare
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 PR implements the wiring for ReqResp method light client updates, but does not produce the necessary messages. The wiring part is correct, but merging as-is would add a route that will always return resource not available.
The store methods make some assumptions on how updates are produced, i.e. using the split to store in either hot / cold. That may not be necessary in a progressive lightclient server (compute updates eagerly).
I would put this PR on ice, implement the message producing logic, and then wire the network based of these commits.
}; | ||
|
||
/// Maximum number of blocks in a single request. | ||
pub type MaxRequestBlocks = U1024; | ||
pub const MAX_REQUEST_BLOCKS: u64 = 1024; | ||
|
||
/// Maximum number of light client updates in a single request. | ||
pub type MaxRequestLightClientUpdates = U128; |
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.
Is this used?
This branch is now quite outdated, and we've made quite a bit of progress on light client server, and it might be easier to close this one and start from scratch, what do you think @eserilev ? |
Most of the outstanding changes of this PR have been covered in other light-client PRs, closing. Thank you so much @GeemoCandama for initially driving this effort forward! It's on us to take too long to dedicate bandwidth to this. |
Issue Addressed
#3651
Proposed Changes
LightClientHeader
and use it in place ofBeaconBlockHeader
in the other light client structs.Additional Info
The database stuff is confusing for me but I think I'll have time to finish this PR by the end of the week.
EDIT: Would this be better as two separate PRs?