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

[Merge] Handle conflicting optimistic head #4650

Closed
ajsutton opened this issue Nov 16, 2021 · 2 comments
Closed

[Merge] Handle conflicting optimistic head #4650

ajsutton opened this issue Nov 16, 2021 · 2 comments

Comments

@ajsutton
Copy link
Contributor

When the optimistic head is different to the strict head, we should disable block, attestation and sync committee production (as per https://hackmd.io/xsk9_feiQ3SIYz2yRa1z7Q).

However we may need to differentiate between nodes which we are waiting on a response from the execution engine and ones which have received a SYNCING response. We shouldn't stop performing duties because a block was just imported and we haven't yet heard back from the execution engine (could use the strict head in that case or could wait until we get a response). The linked doc assumes that we only optimistically sync when we get a SYNCING response from the execution engine whereas Teku always optimistically syncs so we don't have to wait for a synchronous response from the execution engine.

@ajsutton
Copy link
Contributor Author

This isn't necessarily the case any more as we need to keep producing blocks around transition time even if we get a block the EL doesn't know and so returns syncing (such a terminal block may never have been published). See ethereum/consensus-specs#2732

@ajsutton
Copy link
Contributor Author

Going to close this one as the requirements have changed and this ticket is now confusing. We will want to switch the beacon node to "syncing" mode whenever it is using optimistic sync which then takes care of pretty much all of these details. Will log new tickets to cover this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant