Retry

object Retry
Companion:
class
class Object
trait Matchable
class Any
Retry.type

Type members

Classlikes

object Schedules

Convenience methods to create common ZIO schedules for retrying

Convenience methods to create common ZIO schedules for retrying

Value members

Concrete methods

def make(min: Duration, max: Duration, factor: Double, retryImmediately: Boolean, maxRetries: Option[Int]): ZManaged[Clock & Random, Nothing, Retry[Any]]

Create a Retry policy with a common retry schedule

Create a Retry policy with a common retry schedule

By default the first retry is done immediately. With transient / random failures this method gives the highest chance of fast success. After that Retry uses exponential backoff between some minimum and maximum duration. Jitter is added to prevent spikes of retries. An optional maximum number of retries ensures that retrying does not continue forever.

Value parameters:
factor

Factor with which delays increase

max

Maximum backoff time. When this value is reached, subsequent intervals will be equal to this value.

maxRetries

Maximum number of retries

min

Minimum retry backoff delay

retryImmediately

Retry immediately after the first failure

def make[R, E](schedule: Schedule[R, E, Any]): ZManaged[Clock & R, Nothing, Retry[E]]

Create a Retry from a ZIO Schedule

Create a Retry from a ZIO Schedule