Class AbstractJobReconciler<CR extends AbstractFlinkResource<SPEC,​STATUS>,​SPEC extends AbstractFlinkSpec,​STATUS extends CommonStatus<SPEC>>

    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected abstract void cancelJob​(CR resource, io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx, UpgradeMode upgradeMode, org.apache.flink.configuration.Configuration observeConfig)
      Cancel the job for the given resource using the specified upgrade mode.
      protected abstract void cleanupAfterFailedJob​(CR resource, io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx, org.apache.flink.configuration.Configuration observeConfig)
      Removes a failed job.
      protected java.util.Optional<UpgradeMode> getAvailableUpgradeMode​(CR resource, io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx, org.apache.flink.configuration.Configuration deployConfig, org.apache.flink.configuration.Configuration observeConfig)  
      boolean readyToReconcile​(CR resource, io.javaoperatorsdk.operator.api.reconciler.Context<?> context, org.apache.flink.configuration.Configuration deployConfig)
      Check whether the given Flink resource is ready to be reconciled or we are still waiting for any pending operation or condition first.
      boolean reconcileOtherChanges​(CR resource, io.javaoperatorsdk.operator.api.reconciler.Context<?> context, org.apache.flink.configuration.Configuration observeConfig)
      Reconcile any other changes required for this resource that are specific to the reconciler implementation.
      protected boolean reconcileSpecChange​(CR resource, io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx, org.apache.flink.configuration.Configuration observeConfig, org.apache.flink.configuration.Configuration deployConfig, DiffType diffType)
      Reconcile spec upgrade on the currently deployed/suspended Flink resource and update the status accordingly.
      protected void restoreJob​(CR resource, SPEC spec, STATUS status, io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx, org.apache.flink.configuration.Configuration deployConfig, boolean requireHaMetadata)  
      protected void resubmitJob​(CR deployment, io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx, org.apache.flink.configuration.Configuration observeConfig, boolean requireHaMetadata)  
      protected void rollback​(CR resource, io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx, org.apache.flink.configuration.Configuration observeConfig)
      Rollback deployed resource to the last stable spec.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • reconcileSpecChange

        protected boolean reconcileSpecChange​(CR resource,
                                              io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx,
                                              org.apache.flink.configuration.Configuration observeConfig,
                                              org.apache.flink.configuration.Configuration deployConfig,
                                              DiffType diffType)
                                       throws java.lang.Exception
        Description copied from class: AbstractFlinkResourceReconciler
        Reconcile spec upgrade on the currently deployed/suspended Flink resource and update the status accordingly.
        Specified by:
        reconcileSpecChange in class AbstractFlinkResourceReconciler<CR extends AbstractFlinkResource<SPEC,​STATUS>,​SPEC extends AbstractFlinkSpec,​STATUS extends CommonStatus<SPEC>>
        Parameters:
        resource - Related Flink resource.
        observeConfig - Observe configuration.
        deployConfig - Deployment configuration.
        Returns:
        True if spec change reconciliation was executed
        Throws:
        java.lang.Exception - Error during spec upgrade.
      • getAvailableUpgradeMode

        protected java.util.Optional<UpgradeMode> getAvailableUpgradeMode​(CR resource,
                                                                          io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx,
                                                                          org.apache.flink.configuration.Configuration deployConfig,
                                                                          org.apache.flink.configuration.Configuration observeConfig)
      • restoreJob

        protected void restoreJob​(CR resource,
                                  SPEC spec,
                                  STATUS status,
                                  io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx,
                                  org.apache.flink.configuration.Configuration deployConfig,
                                  boolean requireHaMetadata)
                           throws java.lang.Exception
        Throws:
        java.lang.Exception
      • reconcileOtherChanges

        public boolean reconcileOtherChanges​(CR resource,
                                             io.javaoperatorsdk.operator.api.reconciler.Context<?> context,
                                             org.apache.flink.configuration.Configuration observeConfig)
                                      throws java.lang.Exception
        Description copied from class: AbstractFlinkResourceReconciler
        Reconcile any other changes required for this resource that are specific to the reconciler implementation.
        Specified by:
        reconcileOtherChanges in class AbstractFlinkResourceReconciler<CR extends AbstractFlinkResource<SPEC,​STATUS>,​SPEC extends AbstractFlinkSpec,​STATUS extends CommonStatus<SPEC>>
        Parameters:
        resource - Related Flink resource.
        observeConfig - Observe configuration.
        Returns:
        True if any further reconciliation action was taken.
        Throws:
        java.lang.Exception - Error during reconciliation.
      • resubmitJob

        protected void resubmitJob​(CR deployment,
                                   io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx,
                                   org.apache.flink.configuration.Configuration observeConfig,
                                   boolean requireHaMetadata)
                            throws java.lang.Exception
        Throws:
        java.lang.Exception
      • cancelJob

        protected abstract void cancelJob​(CR resource,
                                          io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx,
                                          UpgradeMode upgradeMode,
                                          org.apache.flink.configuration.Configuration observeConfig)
                                   throws java.lang.Exception
        Cancel the job for the given resource using the specified upgrade mode.
        Parameters:
        resource - Related Flink resource.
        upgradeMode - Upgrade mode used during cancel.
        observeConfig - Observe configuration.
        Throws:
        java.lang.Exception - Error during cancellation.
      • cleanupAfterFailedJob

        protected abstract void cleanupAfterFailedJob​(CR resource,
                                                      io.javaoperatorsdk.operator.api.reconciler.Context<?> ctx,
                                                      org.apache.flink.configuration.Configuration observeConfig)
                                               throws java.lang.Exception
        Removes a failed job.
        Parameters:
        resource - The failed job.
        observeConfig - Observe configuration.
        Throws:
        java.lang.Exception - Error during cancellation.