Skip to content

retry FCU if it returns SYNCING #387

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

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open

retry FCU if it returns SYNCING #387

wants to merge 3 commits into from

Conversation

akundaz
Copy link
Contributor

@akundaz akundaz commented Aug 4, 2025

We want to retry this endpoint to not miss block production. If it returns "syncing" we should retry until we're ready.

Context: When the sequencer sends fcu with attributes, it signals to the builder to start building the next block. If builder answers with the response "SYNCING", we infer that it's not healthy, i.e. it doesn't have the parent block ready to build the next block. So we want to give the builder a bit more time to get that parent block.

@akundaz akundaz self-assigned this Aug 4, 2025
Copy link

vercel bot commented Aug 4, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

1 Skipped Deployment
Name Status Preview Comments Updated (UTC)
rollup-boost ⬜️ Ignored (Inspect) Visit Preview Aug 6, 2025 4:09pm

@SozinM
Copy link
Collaborator

SozinM commented Aug 6, 2025

this also should be configured and invoked via a flag
i think it's still useful to have in case of outages to alleviate them

@SozinM
Copy link
Collaborator

SozinM commented Aug 6, 2025

Please also add metric (counter) with the number of retries that we performed

Copy link
Collaborator

@avalonche avalonche left a comment

Choose a reason for hiding this comment

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

can use a library for this? and generalised function so it can be used across different methods

@akundaz
Copy link
Contributor Author

akundaz commented Aug 6, 2025

can use a library for this? and generalised function so it can be used across different methods

Sure, there are a lot of options for this. I'll go with https://github.com/Xuanwo/backon, since it looks like its also used by reth (though not much), unless people have stronger opinions

Actually I'll do this in a separate PR because we want this out soon

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

Successfully merging this pull request may close these issues.

3 participants