Define the behavior of updating schedules when an application is redeployed

Description

Now that 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.

Release Notes

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.

Activity

Show:

Shankar Selvam April 12, 2017 at 2:16 AM

Priyanka Nambiar April 7, 2017 at 11:12 PM

John Jackson March 29, 2017 at 9:14 PM

Please assign to me after creating the docs.

John Jackson March 29, 2017 at 9:14 PM

Andreas Neumann March 10, 2017 at 2:08 AM

+1 with one addition. If an app is redeployed and that results in removal of a program, all schedules for that program must be deleted.

Fixed
Pinned fields
Click on the next to a field label to start pinning.

Details

Assignee

Reporter

Components

Fix versions

Priority

Created March 10, 2017 at 12:25 AM
Updated August 29, 2018 at 12:18 AM
Resolved April 14, 2017 at 3:37 AM