backoff

package
v1.76.0-dev Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 5, 2025 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Overview

Package backoff implements the backoff strategy for clients.

This is kept in internal until the clients project decides whether or not to allow alternative backoff strategies.

Index

Constants

This section is empty.

Variables

View Source
var DefaultExponential = exponential{/* contains filtered or unexported fields */}

DefaultExponential is an exponential backoff implementation using the default values for all the configurable knobs defined in https://github.com/grpc/grpc/blob/master/doc/connection-backoff.md.

View Source
var ErrResetBackoff = errors.New("reset backoff state")

ErrResetBackoff is the error to be returned by the function executed by RunF, to instruct the latter to reset its backoff state.

Functions

func RunF

func RunF(ctx context.Context, f func() error, backoff func(int) time.Duration)

RunF provides a convenient way to run a function f repeatedly until the context expires or f returns a non-nil error that is not ErrResetBackoff. When f returns ErrResetBackoff, RunF continues to run f, but resets its backoff state before doing so. backoff accepts an integer representing the number of retries, and returns the amount of time to backoff.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL