The time between retries will double max_doublings times.
A job's retry interval starts at
min_backoff_duration,
then doubles max_doublings times, then increases linearly, and finally
retries at intervals of
max_backoff_duration
up to retry_count
times.
For example, if
min_backoff_duration
is 10s,
max_backoff_duration
is 300s, and max_doublings is 3, then the job will first be retried in
10s. The retry interval will double three times, and then increase linearly
by 2^3 * 10s. Finally, the job will retry at intervals of
max_backoff_duration
until the job has been attempted
retry_count times.
Thus, the requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s,
300s, ....
The default value of this field is 5.
The time limit for retrying a failed job, measured from time when an
execution was first attempted. If specified with
retry_count, the job
will be retried until both limits are reached.
The default value for max_retry_duration is zero, which means retry
duration is unlimited.
The time limit for retrying a failed job, measured from time when an
execution was first attempted. If specified with
retry_count, the job
will be retried until both limits are reached.
The default value for max_retry_duration is zero, which means retry
duration is unlimited.
The number of attempts that the system will make to run a job using the
exponential backoff procedure described by
max_doublings.
The default value of retry_count is zero.
If retry_count is 0, a job attempt will not be retried if
it fails. Instead the Cloud Scheduler system will wait for the
next scheduled execution time. Setting retry_count to 0 does not prevent
failed jobs from running according to schedule after the failure.
If retry_count is set to a non-zero number then Cloud Scheduler
will retry failed attempts, using exponential backoff,
retry_count times, or until the next scheduled execution time,
whichever comes first.
Values greater than 5 and negative values are not allowed.
The time limit for retrying a failed job, measured from time when an
execution was first attempted. If specified with
retry_count, the job
will be retried until both limits are reached.
The default value for max_retry_duration is zero, which means retry
duration is unlimited.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[],[],null,["# Interface RetryConfigOrBuilder (0.16.0)\n\nVersion latestkeyboard_arrow_down\n\n- [0.16.0 (latest)](/java/docs/reference/google-cloudevent-types/latest/com.google.events.cloud.scheduler.v1.RetryConfigOrBuilder)\n- [0.15.0](/java/docs/reference/google-cloudevent-types/0.15.0/com.google.events.cloud.scheduler.v1.RetryConfigOrBuilder)\n- [0.14.1](/java/docs/reference/google-cloudevent-types/0.14.1/com.google.events.cloud.scheduler.v1.RetryConfigOrBuilder) \n\n public interface RetryConfigOrBuilder extends MessageOrBuilder\n\nImplements\n----------\n\n[MessageOrBuilder](https://cloud.google.com/java/docs/reference/protobuf/latest/com.google.protobuf.MessageOrBuilder.html)\n\nMethods\n-------\n\n### getMaxBackoffDuration()\n\n public abstract Duration getMaxBackoffDuration()\n\nThe maximum amount of time to wait before retrying a job after\nit fails.\nThe default value of this field is 1 hour.\n\n`.google.protobuf.Duration max_backoff_duration = 4;`\n\n### getMaxBackoffDurationOrBuilder()\n\n public abstract DurationOrBuilder getMaxBackoffDurationOrBuilder()\n\nThe maximum amount of time to wait before retrying a job after\nit fails.\nThe default value of this field is 1 hour.\n\n`.google.protobuf.Duration max_backoff_duration = 4;`\n\n### getMaxDoublings()\n\n public abstract int getMaxDoublings()\n\nThe time between retries will double `max_doublings` times.\nA job's retry interval starts at\nmin_backoff_duration,\nthen doubles `max_doublings` times, then increases linearly, and finally\nretries at intervals of\nmax_backoff_duration\nup to retry_count\ntimes.\nFor example, if\nmin_backoff_duration\nis 10s,\nmax_backoff_duration\nis 300s, and `max_doublings` is 3, then the job will first be retried in\n10s. The retry interval will double three times, and then increase linearly\nby 2\\^3 \\* 10s. Finally, the job will retry at intervals of\nmax_backoff_duration\nuntil the job has been attempted\nretry_count times.\nThus, the requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s,\n300s, ....\nThe default value of this field is 5.\n\n`int32 max_doublings = 5;`\n\n### getMaxRetryDuration()\n\n public abstract Duration getMaxRetryDuration()\n\nThe time limit for retrying a failed job, measured from time when an\nexecution was first attempted. If specified with\nretry_count, the job\nwill be retried until both limits are reached.\nThe default value for max_retry_duration is zero, which means retry\nduration is unlimited.\n\n`.google.protobuf.Duration max_retry_duration = 2;`\n\n### getMaxRetryDurationOrBuilder()\n\n public abstract DurationOrBuilder getMaxRetryDurationOrBuilder()\n\nThe time limit for retrying a failed job, measured from time when an\nexecution was first attempted. If specified with\nretry_count, the job\nwill be retried until both limits are reached.\nThe default value for max_retry_duration is zero, which means retry\nduration is unlimited.\n\n`.google.protobuf.Duration max_retry_duration = 2;`\n\n### getMinBackoffDuration()\n\n public abstract Duration getMinBackoffDuration()\n\nThe minimum amount of time to wait before retrying a job after\nit fails.\nThe default value of this field is 5 seconds.\n\n`.google.protobuf.Duration min_backoff_duration = 3;`\n\n### getMinBackoffDurationOrBuilder()\n\n public abstract DurationOrBuilder getMinBackoffDurationOrBuilder()\n\nThe minimum amount of time to wait before retrying a job after\nit fails.\nThe default value of this field is 5 seconds.\n\n`.google.protobuf.Duration min_backoff_duration = 3;`\n\n### getRetryCount()\n\n public abstract int getRetryCount()\n\nThe number of attempts that the system will make to run a job using the\nexponential backoff procedure described by\nmax_doublings.\nThe default value of retry_count is zero.\nIf retry_count is 0, a job attempt will not be retried if\nit fails. Instead the Cloud Scheduler system will wait for the\nnext scheduled execution time. Setting retry_count to 0 does not prevent\nfailed jobs from running according to schedule after the failure.\nIf retry_count is set to a non-zero number then Cloud Scheduler\nwill retry failed attempts, using exponential backoff,\nretry_count times, or until the next scheduled execution time,\nwhichever comes first.\nValues greater than 5 and negative values are not allowed.\n\n`int32 retry_count = 1;`\n\n### hasMaxBackoffDuration()\n\n public abstract boolean hasMaxBackoffDuration()\n\nThe maximum amount of time to wait before retrying a job after\nit fails.\nThe default value of this field is 1 hour.\n\n`.google.protobuf.Duration max_backoff_duration = 4;`\n\n### hasMaxRetryDuration()\n\n public abstract boolean hasMaxRetryDuration()\n\nThe time limit for retrying a failed job, measured from time when an\nexecution was first attempted. If specified with\nretry_count, the job\nwill be retried until both limits are reached.\nThe default value for max_retry_duration is zero, which means retry\nduration is unlimited.\n\n`.google.protobuf.Duration max_retry_duration = 2;`\n\n### hasMinBackoffDuration()\n\n public abstract boolean hasMinBackoffDuration()\n\nThe minimum amount of time to wait before retrying a job after\nit fails.\nThe default value of this field is 5 seconds.\n\n`.google.protobuf.Duration min_backoff_duration = 3;`"]]