Package alluxio.retry
Set of utilities for working with retryable operations. The main entrypoint is
RetryPolicy
which is designed to work with while loops.
Example
{ @code RetryPolicy retry = new ExponentialBackoffRetry(50, Constants.SECOND_MS, MAX_CONNECT_TRY); while (retry.attempt()) { // work to retry } }
-
Interface Summary Interface Description RetryPolicy Policy for determining whether retries should be performed, and potentially waiting for some time before the next retry attempt.RetryUtils.RunnableThrowsIOException Interface for methods which return nothing and may throw IOException. -
Class Summary Class Description CountingRetry An option which allows retrying based on maximum count.ExponentialBackoffRetry Each retry will cause a sleep to happen.ExponentialTimeBoundedRetry A retry policy which uses exponential backoff and a maximum duration time bound.ExponentialTimeBoundedRetry.Builder Builder for time bounded exponential retry mechanisms.RetryUtils Utilities for performing retries.SleepingRetry A retry policy that uses thread sleeping for the delay.TimeBoundedRetry Retry mechanism which performs retries until a certain period of time has elapsed.TimeoutRetry A retry policy which allows retrying until a specified timeout is reached.