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

    Modifier and Type
    Method
    Description
    boolean
    allowRetry(int arg0, long arg1, org.apache.storm.shade.org.apache.curator.RetrySleeper arg2)
     
    int
     
    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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.apache.storm.shade.org.apache.curator.RetryPolicy

    allowRetry
  • Constructor Details

    • 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 Details

    • getSleepTimeMs

      public long getSleepTimeMs(int retryCount, long elapsedTimeMs)
      Overrides:
      getSleepTimeMs in class org.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 interface org.apache.storm.shade.org.apache.curator.RetryPolicy