apache/beam · error
Retrying in ms.
Error message
Retrying in {} ms. What it means
WARN logged by IOITHelper.executeWithRetry right after a failed attempt, announcing the exponential backoff delay (2^attempts * minDelay milliseconds) before the next try. Purely informational: it makes the escalating wait visible in test logs so a slow-to-start dependency doesn't look like a hang.
Solutions
- Tune maxAttempts/minDelay so total retry time exceeds the dependency's worst-case startup time
- Check the 'Attempt #n failed' log for why retries are needed
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at sdks/java/io/common/src/main/java/org/apache/beam/sdk/io/common/IOITHelper.java:94 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of apache/beam@12126d8942 (2026-09-13).
Data as JSON: /api/errors/ba26ac1a085f3f78.
Report an issue: GitHub.
Appendix: source
Thrown at sdks/java/io/common/src/main/java/org/apache/beam/sdk/io/common/IOITHelper.java:94
* @param function The function to retry
* @throws Exception
*/
public static void executeWithRetry(int maxAttempts, long minDelay, RetryFunction function)
throws Exception {
int attempts = 1;
long delay = minDelay;
while (attempts <= maxAttempts) {
try {
function.run();
return;
} catch (Exception e) {
LOG.warn("Attempt #{} of {} failed", attempts, maxAttempts, e);
if (attempts == maxAttempts) {
throw e;
} else {
long nextDelay = (long) Math.pow(2, attempts) * delay;
LOG.warn("Retrying in {} ms.", nextDelay);
Thread.sleep(nextDelay);
}
attempts++;
}
}
}
}
View on GitHub (pinned to 12126d8942)