[
https://issues.apache.org/jira/browse/FLINK-26719?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17508613#comment-17508613
]
Matyas Orhidi commented on FLINK-26719:
---------------------------------------
h2. _Max Interval Between Reconciliations_
_In case informers are all in place and reconciler is implemented correctly,
there is no need for additional triggers. However, it’s a [common
practice|https://github.com/java-operator-sdk/java-operator-sdk/issues/848#issuecomment-1016419966]
to have a failsafe periodic trigger in place, just to make sure the resources
are reconciled after certain time. This functionality is in place by default,
there is quite high interval (currently 10 hours) while the reconciliation is
triggered. See how to override this using the standard annotation:_
_{{@ControllerConfiguration(finalizerName = NO_FINALIZER,
reconciliationMaxInterval = @ReconciliationMaxInterval( interval
= 50, timeUnit = TimeUnit.MILLISECONDS))}}_
_Copy_
_The event is not propagated in a fixed rate, rather it’s scheduled after each
reconciliation. So the next reconciliation will after at most within the
specified interval after last reconciliation._
_This feature can be turned off by setting {{reconciliationMaxInterval}} to
[{{Constants.NO_RECONCILIATION_MAX_INTERVAL}}|https://github.com/java-operator-sdk/java-operator-sdk/blob/442e7d8718e992a36880e42bd0a5c01affaec9df/operator-framework-core/src/main/java/io/javaoperatorsdk/operator/api/reconciler/Constants.java#L8-L8]
or any non-positive number._
_The automatic retries are not affected by this feature, in case of an error no
schedule is set by this feature._
It'd be great if we could make it configurable in the operator. See
https://javaoperatorsdk.io/docs/features
> Rethink the default reschedule reconcile loop
> ---------------------------------------------
>
> Key: FLINK-26719
> URL: https://issues.apache.org/jira/browse/FLINK-26719
> Project: Flink
> Issue Type: Sub-task
> Reporter: Aitozi
> Priority: Major
>
> When I test locally, I found that it will reschedule and reconcile with the
> {{operator.reconciler.reschedule.interval.sec}} I doubt why we need this? I
> think we just need to reconcile
> # waiting for the status change
> # receive the new event
> # waiting for the savepoint result
> So when JobManagerDeploymentStatus is Ready, we do not have to trigger the
> reconcile except waiting for the savepoint result.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)