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

Drop skip too large condition for liveness safety #6014

Merged
merged 1 commit into from
Jul 5, 2024

Conversation

dapplion
Copy link
Collaborator

@dapplion dapplion commented Jun 27, 2024

Issue Addressed

Chating with @michaelsproul he noted that Lighthouse still includes a condition that could jeopardize the liveness of the chain under extreme circumstances.

If some codepath (for example block production) needs to advance a state multiple epochs such that the total runtime of that advance is larger than seconds_per_slot, it will just error. If this condition happens the node will be stuck, unable to propose blocks on the chain and making the problem worse. If enough nodes follow this rule, the network will never progress and stall. The motivation for this error is to protect the node against very expensive state advance requests, but these are necessary for liveness.

For context, the condition was introduced in this PR

I believe we should drop the condition now as is. In the future, we may choose to harden the node against corner cases where the network is in a problematic state, such as having no head in the last N epochs.

Proposed Changes

Drop skip too large condition for liveness safety

@dapplion dapplion added the ready-for-review The code is ready for review label Jun 27, 2024
Copy link
Member

@michaelsproul michaelsproul left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree that this condition needs to go

@michaelsproul michaelsproul added ready-for-merge This PR is ready to merge. and removed ready-for-review The code is ready for review labels Jul 5, 2024
@michaelsproul
Copy link
Member

@mergify queue

Copy link

mergify bot commented Jul 5, 2024

queue

✅ The pull request has been merged automatically

The pull request has been merged automatically at ef956e6

mergify bot added a commit that referenced this pull request Jul 5, 2024
@mergify mergify bot merged commit ef956e6 into sigp:unstable Jul 5, 2024
28 checks passed
@dapplion dapplion deleted the drop-skip-too-large branch July 10, 2024 08:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready-for-merge This PR is ready to merge.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants