Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue Addressed
Fix an issue on Holesky after true finalization was reached, whereby blocks on the canonical chain were rejected due to "not descending from the split block".
I think the issue here is that
is_descendant
will returnfalse
for anyancestor_root
that has been pruned. Once we got true finality back fork choice got pruned before the split block was updated on some/most nodes, so they hit this error case.Proposed Changes
Only do the
is_descent
check if thesplit.slot
is greater than thefinalized_slot
, or equivalently, setis_descendant_from_split_block
whensplit.slot <= finalized_slot
.