Change packages

A Change package contains configuration content that is captured over a defined period.

You typically use a Change package if you must migrate a limited number of records that change after the initial configuration of an environment. The changes can include database inserts, updates, and deletions.

Use a Change package to migrate the following configuration content:
  • Few or selective changes
  • Changes that are made by specific users
  • Changes that are made to a single application
  • Deletions to records in tables

Change packages cannot contain business objects that have unique ID primary keys. You cannot migrate Change packages that contain business objects with unique ID primary keys. A unique ID column has the same name as the corresponding table, followed by the letters ID (for example, column DMMESSAGEID in the DMMESSAGE table). Values for unique ID columns are unique to a database. Migration of such data fails in a target environment because unique ID values might point to different records in the target and source databases. If a Change package definition contains business objects with unique ID primary keys, you cannot activate the package definition.

Insert changes might cause deployment errors if the record exists in the target. Before you migrate Change packages that contain database insert changes, ensure that the target environment does not contain the corresponding record. The record might exist from a previous migration or because it was created in the target environment. If the record exists, the Change package might fail to deploy. An error message indicates that the record exists and cannot be inserted.

Activation

The data in a Change package is based on the database changes that occur between the time that you activate the package definition and the time that you create the package or deactivate the package definition. After you activate a package definition, event listeners monitor the business objects in each object structure of the migration groups that are included in the package definition and start to capture the change information. When you deactivate a Change package definition, the event listeners stop capturing changes.

You use the menu actions in the Migration Manager application to activate and deactivate package definitions. You can activate a package definition only if its status is approved (Appr). An activated package definition cannot be modified.

Event tracking

After a Change package definition is activated, you can view and delete the records that are captured in the package in the View Event Tracking Records window. Typically, you delete Change records only in rare situations, such as if a change is made inadvertently or if a change is made only as a test.

When you use Change packages, you must occasionally reset event tracking to prevent system performance degradation. When you activate a Change package definition, the Migration Manager application captures and writes database changes to a change event tracking table in the database. Over time, the event tracking table might become large and slow down the tracking of changes, and you might need to reset event tracking. When you reset event tracking, the change information is copied to a history table and removed from the change event tracking table. Do not reset event tracking immediately after you create a package from a package definition because you must first ensure that the deployment occurs without error.

If you migrate ticket templates by using Change packages, you must activate the package definition before any ticket templates are created or updated. After the Change package is deployed, you must reset the event tracking records for the package definition in the source environment.

Time considerations

The length of time that you capture events in a Change package is not restricted. However, Change packages are intended to capture a relatively small number of changes. If you use Change packages, take into account the following considerations:
  • Change packages capture events only for the objects that are specified in the package definition. If an object is inadvertently omitted and a long time passes, all the changes to the object are lost.
  • If a Change package contains many records captured over a long time, and if changes occur in the target environment simultaneously, the chances of deployment errors increase.
  • If test changes are made while a Change package is active, the test changes are captured and are migrated to the target environment.

Administration mode

To make structural changes to the database using the Database Configuration application, administration mode must be turned on. When administration mode is on, event tracking stops. Do not make any other changes while administration mode is on. Wait until the database configuration is complete and administration mode is turned off.