Package org.apache.storm.utils
Class StormBoundedExponentialBackoffRetry
- java.lang.Object
-
- org.apache.storm.shade.org.apache.curator.retry.ExponentialBackoffRetry
-
- org.apache.storm.shade.org.apache.curator.retry.BoundedExponentialBackoffRetry
-
- org.apache.storm.utils.StormBoundedExponentialBackoffRetry
-
- All Implemented Interfaces:
org.apache.storm.shade.org.apache.curator.RetryPolicy
public class StormBoundedExponentialBackoffRetry extends org.apache.storm.shade.org.apache.curator.retry.BoundedExponentialBackoffRetry
-
-
Constructor Summary
Constructors Constructor Description StormBoundedExponentialBackoffRetry(int baseSleepTimeMs, int maxSleepTimeMs, int maxRetries)
The class provides generic exponential-linear backoff retry strategy for storm.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
allowRetry(int arg0, long arg1, org.apache.storm.shade.org.apache.curator.RetrySleeper arg2)
int
getN()
long
getSleepTimeMs(int retryCount, long elapsedTimeMs)
-
Methods inherited from class org.apache.storm.shade.org.apache.curator.retry.BoundedExponentialBackoffRetry
getMaxSleepTimeMs
-
Methods inherited from class org.apache.storm.shade.org.apache.curator.retry.ExponentialBackoffRetry
getBaseSleepTimeMs
-
-
-
-
Constructor Detail
-
StormBoundedExponentialBackoffRetry
public StormBoundedExponentialBackoffRetry(int baseSleepTimeMs, int maxSleepTimeMs, int maxRetries)
The class provides generic exponential-linear backoff retry strategy for storm. It calculates threshold for exponentially increasing sleeptime for retries. Beyond this threshold, the sleeptime increase is linear.Also adds jitter for exponential/linear retry. It guarantees `currSleepTimeMs >= prevSleepTimeMs` and `baseSleepTimeMs <= currSleepTimeMs <= maxSleepTimeMs`
-
-
Method Detail
-
getSleepTimeMs
public long getSleepTimeMs(int retryCount, long elapsedTimeMs)
- Overrides:
getSleepTimeMs
in classorg.apache.storm.shade.org.apache.curator.retry.BoundedExponentialBackoffRetry
-
getN
public int getN()
-
allowRetry
public boolean allowRetry(int arg0, long arg1, org.apache.storm.shade.org.apache.curator.RetrySleeper arg2)
- Specified by:
allowRetry
in interfaceorg.apache.storm.shade.org.apache.curator.RetryPolicy
-
-