@Override
    public boolean equals(final Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }
        final ForwardQueueConfig that = (ForwardQueueConfig) o;
        return Double.compare(retryDelayGrowthFactor, that.retryDelayGrowthFactor) == 0
               && forwardThreadCount == that.forwardThreadCount
               && forwardRetryThreadCount == that.forwardRetryThreadCount
               && Objects.equals(forwardDelay, that.forwardDelay)
               && Objects.equals(retryDelay, that.retryDelay)
               && Objects.equals(maxRetryDelay, that.maxRetryDelay)
               && Objects.equals(maxRetryAge, that.maxRetryAge)
               && Objects.equals(errorSubPathTemplate, that.errorSubPathTemplate)
               && Objects.equals(livenessCheckInterval, that.livenessCheckInterval);
    }
If we fail to send, how much to increase the retryDelay duration by after each retry failure,
e.g. 1.1 means increase by 10% each time,
i.e. if retryDelay is 1000 and retryDelayGrowthFactor is 1.1, then the retry delays will be
1000, 1100, 1210, 1331, 1464, etc. Default value of 1 so the times don't increase.
stroom-proxy/stroom-proxy-app/src/main/java/stroom/proxy/app/handler/ForwardQueueConfig.java