Skip to content

Commit bba30f9

Browse files
authored
improve: GenericRetry does not provide mutable singleton instance (#2934)
1 parent c0f9db0 commit bba30f9

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/config/ControllerConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ default boolean isGenerationAware() {
5757
String getAssociatedReconcilerClassName();
5858

5959
default Retry getRetry() {
60-
return GenericRetry.DEFAULT;
60+
return GenericRetry.defaultLimitedExponentialRetry();
6161
}
6262

6363
@SuppressWarnings("rawtypes")

operator-framework-core/src/main/java/io/javaoperatorsdk/operator/processing/retry/GenericRetry.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,15 @@ public class GenericRetry implements Retry, AnnotationConfigurable<GradualRetry>
1010
private double intervalMultiplier = GradualRetry.DEFAULT_MULTIPLIER;
1111
private long maxInterval = GradualRetry.DEFAULT_MAX_INTERVAL;
1212

13+
/**
14+
* @deprecated use {@link GenericRetry#defaultLimitedExponentialRetry()} instead this instance.
15+
* Since GenericRetry is mutable, singleton is problematic.
16+
*/
17+
@Deprecated(forRemoval = true)
1318
public static final Retry DEFAULT = new GenericRetry();
1419

1520
public static GenericRetry defaultLimitedExponentialRetry() {
16-
return (GenericRetry) DEFAULT;
21+
return new GenericRetry();
1722
}
1823

1924
public static GenericRetry noRetry() {

0 commit comments

Comments
 (0)