Delays appear to not be respected when manually scheduling a retry via an AsyncExecution:
RetryPolicy<String> retryPolicy = new RetryPolicy<String>().withBackoff(100, 60000, ChronoUnit.MILLIS)
.withMaxAttempts(10)
.onFailedAttempt(e -> System.out.println("Failed with " + e));
Failsafe.with(retryPolicy).runAsyncExecution(exec -> {
if (!exec.complete(null, new Exception()))
exec.retry();
}).get();
Similar when using withDelay.
h/t @thoec