Uploaded image for project: 'CDAP'
  1. CDAP
  2. CDAP-8942

Define the behavior of updating schedules when an application is redeployed

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.1.1
    • Component/s: App Fabric, Docs
    • Labels:
      None
    • Release Notes:
      Hide
      Allow administrators to enable or disable updating schedules using the property "app.deploy.update.schedules" in cdap-site.xml. Users can override this to enable or disable updating schedules during deployment of an application using the same property specified in the configuration of the application.
      Show
      Allow administrators to enable or disable updating schedules using the property "app.deploy.update.schedules" in cdap-site.xml. Users can override this to enable or disable updating schedules during deployment of an application using the same property specified in the configuration of the application.
    • Rank:
      1|hzzxhr:

      Description

      Now that CDAP-1609 allows managing schedules outside of an application, we will need to define the behavior when the schedules are managed outside of an application and then the application gets redeployed.

      The current behavior on an application redeployment is to bring the existing schedules in line with what is defined in the new version of the application. Any new schedules in the new version of the application are created, schedules not in the new version are deleted and schedules that are changed in the new version are updated.

      However in the scenario where a system admin is managing the schedules for an application outside of an application, it is desirable that a re-deploy of an application does not overwrite the externally managed schedules.

      We also need to allow the current behavior to continue for existing users who manage the schedules using the application.

      The proposed solution is to have a deploy time flag updateSchedules to control the behavior -

      1. updateSchedules is set to true
        In this case, when an application is redeployed, all existing schedules will be changed to match the schedules defined in the new application version. updateSchedules is set to true by default, hence this preserves current behavior.
      2. updateSchedules is set to false
        If a system administrator sets updateSchedules to false during application deployment time then no changes are done to the existing schedules, nor any new schedules added. Only if a program is deleted, then its schedule is removed.

      The default value of updateSchedules parameter can be changed in cdap-site.xml.

      No matter what updateSchedules is set to in cdap-site.xml, when an application is deleted all the schedules associated with the application are deleted.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                shankar Shankar Selvam
                Reporter:
                poorna Poorna Chandra
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: