go-ethereum/beacon/light/request
Felföldi Zsolt fc43170cdd
Some checks are pending
/ Linux Build (arm) (push) Waiting to run
/ Keeper Build (push) Waiting to run
/ Windows Build (push) Waiting to run
/ Linux Build (push) Waiting to run
/ Docker Image (push) Waiting to run
beacon/light: keep retrying checkpoint init if failed (#33966)
This PR changes the blsync checkpoint init logic so that even if the
initialization fails with a certain server and an error log message is
printed, the server goes back to its initial state and is allowed to
retry initialization after the failure delay period. The previous logic
had an `ssDone` server state that did put the server in a permanently
unusable state once the checkpoint init failed for an apparently
permanent reason. This was not the correct behavior because different
servers behave differently in case of overload and sometimes the
response to a permanently missing item is not clearly distinguishable
from an overload response. A safer logic is to never assume anything to
be permanent and always give a chance to retry.
The failure delay formula is also fixed; now it is properly capped at
`maxFailureDelay`. The previous formula did allow the delay to grow
unlimited if a retry was attempted immediately after each delay period.
2026-04-01 16:05:57 +02:00
..
scheduler.go all: fix problematic function name in comment (#32513) 2025-08-29 08:54:23 +08:00
scheduler_test.go beacon/light/sync: print error log if checkpoint retrieval fails (#29532) 2024-04-22 13:19:42 +02:00
server.go beacon/light: keep retrying checkpoint init if failed (#33966) 2026-04-01 16:05:57 +02:00
server_test.go beacon/light: fix shutdown issues (#29946) 2024-06-12 16:38:19 +02:00