Skip to content

feat: retry transient remote peer errors#5

Merged
mateuszkrasucki merged 1 commit into
ccpgames:masterfrom
mateuszkrasucki:retry-remote
May 29, 2026
Merged

feat: retry transient remote peer errors#5
mateuszkrasucki merged 1 commit into
ccpgames:masterfrom
mateuszkrasucki:retry-remote

Conversation

@mateuszkrasucki
Copy link
Copy Markdown
Collaborator

  • Wraps the Get/Set/Remove peer calls in a shared callRemoteIfRemoteOwner helper that retries ErrRemoteCall (which includes httpGetter being closed) responses with exponential backoff (from 1ms to 20ms, up to 250ms total) and records peer errors on the active span. When the retry budget is exhausted, the local load or other operations are to kick in.

    Also introduces a NoopLogger default so callers no longer need nil checks, and adds TestHttpGetterClosed covering the close/remove race through a fake PeerPicker.

- Wraps the Get/Set/Remove peer calls in a shared
  callRemoteIfRemoteOwner helper that retries ErrRemoteCall (which
  includes httpGetter being closed) responses with exponential backoff
  (from 1ms to 20ms, up to 250ms total) and records peer errors on the
  active span. When the retry budget is exhausted, the local load or
  other operations are to kick in.

  Also introduces a NoopLogger default so callers no longer need nil
  checks, and adds TestHttpGetterClosed covering the close/remove race
  through a fake PeerPicker.
@mateuszkrasucki mateuszkrasucki merged commit 49a4cdf into ccpgames:master May 29, 2026
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.

1 participant