Skip to main content

The retry section of aerospike-pubsub-outbound.yml

The retry section corresponds to the Pub/Sub API com.google.api.gax.retrying.RetrySettings. It lets you set how the connector behaves when it is unable to connect with Pub/Sub.

All options that have to do with delays or timeouts use a format similar to the ISO-8601 format for durations. The format is PnDTnHnMn.nS, where

  • P for "period" indicates that the next value is the number of days.
  • nD is the number of days. For example, 1D specifies one day.
  • T indicates that the next value or values specify the duration of time.
  • nH is the number of hours. For example, 1H specifies one hour.
  • nM is the number of minutes. For example, 1M specifies one minute.
  • n.nS is the number of seconds. You can use decimal numbers that have up to nine digits. For example, 3.141519S specifies 3.141519 seconds.

Examples:

  • T0.001S specifies one millisecond.
  • T2M and T120S both specify two minutes.
  • P1DT12H30M45S specifies one day, twelve hours, thirty minutes, and forty-five seconds.
OptionRequired?DefaultDescription
initial-retry-delayNo0The delay before the first retry. Subsequent retries use this value adjusted according to the retry-delay-multiplier.
initial-rpc-timeoutNo0The timeout for the initial RPC. Subsequent calls use this value adjusted according to rpc-timeout-multiplier.
jitteredNotrueDetermines if the delay time should be randomized. In most cases, if jitter is set to true the actual delay time is calculated in the following way:

actualDelay = rand_between(0, min(maxRetryDelay, delay))

Possible values: true and false.
max-attemptsNo0The maximum number of attempts to perform. If this value is greater than 0, and the number of attempts reaches this limit, the logic gives up retrying even if the total retry time is still lower than total-timeout.
max-retry-delayNo0The limit on the value of the retry delay, so that the retry-delay-multiplier can't increase the retry delay higher than this amount.
max-rpc-timeoutNo0The limit on the value of the RPC timeout, so that the rpc-timeout-multiplier can't increase the RPC timeout higher than this amount.
retry-delay-multiplierNo1.0The change in retry delay. The retry delay of the previous call is multiplied by this value to calculate the retry delay for the next call.
rpc-timeout-multiplierNo1.0The change in RPC timeout. The timeout of the previous call is multiplied by this value to calculate the timeout for the next call.
total-timeoutNo0How long the logic should keep trying the remote call until it gives up completely. The higher the total timeout, the more retries can be attempted.