Skip to main content

Using the model upgrader

You'll use the Model Upgrader tool to upgrade models to ensure compatibility with the upgraded version.

After you install new versions of the Incentives installation files, you must upgrade your existing models to be compatible with those new versions.

Upgrade options give you control over the upgrade process for SQL Server models and can reduce the size of transaction log files on the SQL server.

Installing Model Upgrader

The Model Upgrader tool is required to upgrade your Incentives model to be compatible with your upgraded application.

If you have a previous version of Model Upgrader installed, remove the older version before you install the new one.

  1. Double-click the Incentives-modelupgrader.exe installation file in your release folder.

  2. Complete the steps in the installation wizard.

Running Model Upgrader

After Model Upgrader is installed, you must run it to upgrade your current model so that it is compatible with the new version of Incentives.

  1. In the location where you installed the Model Upgrader tool, find and open the ModelUpgrader.appSettings.config file.

  2. Change IsCloud to false and save the file.

    <add key="IsCloud" value="false"/>

  3. Open the Incentives-modelupgrader.exe file.

  4. In the Model Upgrader tool, type the server name. This is the name of the database server that contains your model.

  5. Select the database type from the menu. This is the type of database that you are connecting to, such as SQL Server 2014.

    To use SQL Server 2016, all configurations must be done as if using SQL Server 2014. For example, if the database you are using is SQL Server 2016, then select SQL Server 2014 from the drop-down list.

  6. Type the database name. This is the name of the database that contains your Incentives model.

    1. If you do not know the database name, click Browse.

    2. Select a model.

  7. Type a value in the Database Timeout field. The default is 90 seconds and probably does not need to change. However, change it here if you increased the default timeout in the Incentives Service configuration file.

  8. Type your user ID and password. This refers to the database user with database altering permissions. This is not the same as the Incentives administrator password.

  9. Click Upgrade.

Model Upgrader options

If you click the Options button when you run the Model Upgrader tool in Incentives, you can set error protection.

The following error protection options are available:

None

This option uses the least resources but offers no protection for the model if an error occurs. If an error occurs during the upgrade process, the model that is being upgraded cannot be salvaged, and must be restored from a backup.

Important

If you plan to use this option, create a full backup first.

Partial

If a model fails to upgrade and the Partial protection option is selected, an error might be resolved without restoring the original backup of the model. Upgrades that fail can always safely be restarted. This option uses fewer resources than the Complete option but more than the None option.

Important

If you plan to use this option, create a full backup first.

Major Release

If the upgrade fails, this option rolls back the database to the last successful database version that corresponds to a major release. Users can then install the matching major Incentives release and make the necessary changes to the model to allow it to upgrade. After the changes are made, Model Upgrader can be safely run again.

Important

If you plan to use this option, back up the model first.

Complete

The Complete protection level guarantees that your model is usable no matter what errors are encountered during the upgrade process. If your model cannot be completely upgraded to the database version of your choice, your model remains unchanged. This is the safest option, but it is also the option that uses the most resources.

Target database version

The target database version in the Incentives Model Upgrader tool is an integer that indicates the specific database version that you are upgrading to.

The database version is different from the software version. There is a particular database version for every software version, but there is not a software version for every database version.

You might want to select a database version to control the level of error protection at different points during the upgrade. When you select a target version, you can run the upgrade in smaller increments to avoid running out of disk space.

Updates following release of Version 10.1.1.95.0 (2 December 2019)

Following the release of 10.1.1.95.0, database versions are no longer used. Instead, updates go out in update pools. The final database version is 1283. The model upgrader cannot target individual updates beyond 1283.

Updates are grouped in pools and are not run sequentially. Conversely, the update pools are sequential and there are no gaps between them.

The UpdateLog_ table contains any updates run past 1283. You can identify the model version by comparing the hash. Models containing the same updates have a matching hash. Every hash is prefixed with 1283.