How does customization affect the upgrade process?

The following explains how customization affects the upgrade process.

Conflicts

Object changes: The Upgrade Utility compares the objects in your database with their out-of-box versions and the corresponding objects provided from the upgrade package. The Upgrade Utility compares objects by their signatures. Each data record in Service Manager has a unique signature, which changes once that data record is updated. When processing object changes, the Upgrade Utility behaves as described in the following tables.

Changed object
Object in DB has been tailored? OOB version of object matches upgrade package? Out-of-box upgrade Custom upgrade
Yes No

The Upgrade Utility tries to merge the object from the upgrade package with your tailored object. If the merge is successful, the Upgrade Utility marks the new merged object as "Auto Merged." If the merge fails, the Upgrade Utility marks the object as "Renamed." In both cases, the Upgrade Utility prefixes the object from the upgrade package with "NEW960," and then copies the object to your database and prefixes that object as "PRE<version_number>". For example, an object from applications version 9.31.0022 PDCP4 would be prefixed with "PRE9.31.0022_PDCP4".

The Upgrade Utility marks the object from the upgrade package as “Forced,” and then copies the object in its revision.
Yes Yes

The Upgrade Utility keeps your local version, even if your version has been tailored and marks your local version as “Kept Customer”.

The Upgrade Utility marks your local version object as “Already Current.”
No No

The Upgrade Utility overwrites the object in your database with the object from the upgrade package, and marks the object as “Upgraded.”

The Upgrade Utility marks the object from the upgrade package as “Forced,” and then copies the object in its revision.
No Yes The Upgrade Utility marks the object as "Already Current" regardless of whether this is the first upgrade or a custom upgrade.
Added object
Object is added in ... Behavior Note
DB The Upgrade Utility always keeps your local version and does nothing else. The object in your database does not have a corresponding object from the upgrade package.
Upgrade package The Upgrade Utility adds the object to your database and marks the object as "Added" regardless of whether this the first upgrade or a custom upgrade. The object from the upgrade package does not have a corresponding object from your database.

Dbdict changes: The Upgrade Utility automatically adds new dbdict and merges new fields to existing dbdicts. The Upgrade Utility does not delete any existing field. For field and key changes, check "Field mapping changes" and "Key changes."

Field mapping changes: Normally the Upgrade Utility applies field mapping changes automatically, but there may be some exceptions. For example, when a length change is required, the Upgrade Utility automatically expands the length mapping. However, if the field mapping is a LOB-type change, the Upgrade Utility will not the change the type mapping. For detailed exceptions, check SQL Field Compare results before the upgrade and the except.log file after the upgrade.

Key changes: Normally the Upgrade Utility applies key changes automatically, but there may be some exceptions. For example, the Upgrade Utility automatically adds a new key and updates the existing key of the pre-upgrade out-of-box version. However, if a Unique key has been tailored, the Upgrade Utility will not apply the key change. For detailed exceptions, check the SQL Unique Key Compare Results before the upgrade and the except.log file after the upgrade.

Customization during upgrade

If any tailoring changes are made to your production system, for example, by applying an applications "hot fix," after you have initiated the upgrade process, it is highly recommended that you apply those same changes to the development system that is being used for conflict resolution before you create the final custom upgrade package. Or, these tailoring changes may be lost after the custom upgrade has been applied to production, and any conflict resolution that needs to be done in a production environment may slow down the production upgrade.