Skip to content
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

VC should publish proposer preparation and validator registrations to all connected BNs #3614

Closed
michaelsproul opened this issue Sep 27, 2022 · 3 comments
Labels
enhancement New feature or request val-client Relates to the validator client binary

Comments

@michaelsproul
Copy link
Member

michaelsproul commented Sep 27, 2022

Description

Validator clients using fallback beacon nodes may miss out on quality block proposals in some situations because they don't send proposer preparation and validator registration messages to any beacon node except the primary. If the primary fails before these messages are re-sent, then a fallback BN which lacks the preparations and registrations will be used instead, likely resulting in a block with 0 transactions, as the BN sends forkchoiceUpdated

This issue is mostly addressed by #3529, which broadcasts the proposer preparation messages. However it does not (presently) broadcast the validator registrations. This may be less of an issue, as the builder(s) probably remember the registrations from the primary beacon node.

CC @realbigsean @pawanjay176

@michaelsproul michaelsproul added enhancement New feature or request val-client Relates to the validator client binary labels Sep 27, 2022
@realbigsean
Copy link
Member

Yes, definitely need the changes in #3529!

For registrations, I imagine people using fallback BN's with builders would usually either have:

  1. Both BN's connected to the same set of relays, so broadcasting registrations would end up doubling the load of messages relays have to process
  2. Only the primary BN has a builder configured, assuming if we are on our fallback node we should be as conservative as possible. Here a broadcast wouldn't be beneficial and would just produce some ERRO's

I think generally registrations are sent with enough frequency and that relays cache them for long enough that we're OK to just send them to the first successful node.

@pawanjay176
Copy link
Member

I agree that registrations don't need to be sent to every beacon node for now, can add it later on if really required.

@michaelsproul
Copy link
Member Author

Awesome I'll mark this as closed by #3529 and we can re-open if we see issues with registrations

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request val-client Relates to the validator client binary
Projects
None yet
Development

No branches or pull requests

3 participants