Add RPC provider failover for block ingestor (#6430)
* graph: Fix retry_strategy underflow when limit is 0 Use saturating_sub to avoid underflow when limit is set to 0. * chain/ethereum: Add RPC provider failover for block ingestor When do_poll() fails, the ingestor now probes the current provider before switching. If the current provider is unreachable, all alternatives are probed in parallel and the first healthy one is selected. This avoids unnecessary switches on non-RPC failures (e.g. DB errors, chain reorgs). Also limits latest_block_ptr retries to ENV_VARS.request_retries so failures surface to the failover logic instead of retrying indefinitely. * docs: Document block ingestor failover behavior * chain/ethereum: Return provider directly from resolve_provider Simplify resolve_provider_idx into resolve_provider by returning a reference to the Arc<A> instead of a usize index, eliminating the separate indexing step at the call site.
M
Maksim Dimitrov committed
277f45e0960f8d8e0e4ace44ddbc38170423559d
Parent: 192869f
Committed by GitHub <noreply@github.com>
on 3/27/2026, 11:20:49 AM