| Data Upgrade Engine overview |  |
| The Data Upgrade Engine (DUE) is used to update the customer data after a Feature Pack (FP) upgrade. To perform a data upgrade, you must execute a Data Upgrade Run. In some situations, ERP LN automatically generates a data upgrade run. You can also manually create data upgrade runs. Each data upgrade run belongs to a particular package combination and performs a data upgrade for one or more companies that are linked to that package combination. A data upgrade run consists of upgrade tasks. Each task executes one upgrade program for one company. Each upgrade program upgrades a particular table. Example Companies 410 and 411 are linked to package combination b61ua6. Data upgrade run 19 is linked to package combination b61ua6 and contains these upgrade tasks:
Company | Upgrade program
410 | tcsptdll0901 - Upgrade of table tcfin020
410 | tcsptdll0902 - Upgrade of table tcfin015
410 | tcsptdll0905 - Upgrade of table tccom000
410 | tcsptdll1902 - Upgrade of table tccom710
411 | tcsptdll0901 - Upgrade of table tcfin020
411 | tcsptdll0902 - Upgrade of table tcfin015
411 | tcsptdll0905 - Upgrade of table tccom000
411 | tcsptdll1902 - Upgrade of table tccom710
Note You do not have to upgrade all companies of a package combination in one run. You can define multiple runs for different companies of the same package combination. For example, you can define different runs for live companies and for test companies, and execute these runs at different times. See the following example. Example These companies are linked to package combination A: 901 - live data 902 - live data 903 - test data 904 - test data You define these runs for package combination A: 1 - to upgrade data for company 901 and 902 2 - to upgrade data for company 903 and 904 See this figure: Data upgrade runs are executed in these situations:
Situation | Description | Note
1 | You installed a new feature pack ( service pack) in a package combination. | A new data upgrade run is generated automatically after this action. You must initialize and execute this data upgrade run.
2 | You moved companies to another package combination through the Change Package Combination by Company (ttaad1101m000) session. | A new data upgrade run is generated automatically after this action. You must initialize and execute this data upgrade run.
3 | In a package combination, you replaced a VRC by another VRC. For example, in package combination A, you replaced VRC tdXXXX by tdZZZZ. | An upgrade is only required if this change affects tables. In that case, you must manually create and execute a data upgrade run. Tables are affected, for example: If the new VRC belongs to a new feature pack, and therefore contains changed table definitions If the new VRC is derived from a VRC that belongs to a new feature pack
4 | You changed the VRC derivation structure. | An upgrade is only required if this change affects tables. In that case, you must manually create and execute a data upgrade run. Tables are affected, for example, if you derive a VRC from a VRC that belongs to a new feature pack. For example: Package combination A contains VRC tdYYYY, which is derived from an FP5 VRC. You change the derivation, so that tdYYYY is derived from an FP6 VRC, which contains changed table definitions. You must create and execute a data upgrade run for package combination A.
Note If a data upgrade run is generated, or created manually, the involved companies are locked. Normal users cannot access these companies anymore. In the Companies (ttaad1100m000) session, these companies have the Upgrade Needed status. You can start a run in simulation mode: the Data Upgrade Engine will run the upgrade without actualizing the transactions. Execution During a data upgrade run, various upgrade programs are executed. Some upgrade programs must have finished successfully before another program can start. To enhance the performance of the data upgrade process, you can run the DUE using multiple bshells. In this case multiple CPUs can be utilized. The DUE gathers the list of upgrade programs that must be executed and spreads the work over the different bshells. When you start a data upgrade run, you can specify the number of bshells you want to activate. The sequence in which the upgrade programs are executed depends on: Upgrade Batch Each upgrade program belongs to one of these batches: First Middle Last During a data upgrade run, first the upgrade programs of the First Batch are executed. Then the Middle Batch is executed. Finally the Last Batch is executed. Prerequisite dependencies within batches An upgrade program can depend on other upgrade programs in the same batch, which must have been executed successfully before the current program can start. An upgrade program can only be started if its pre-requisites have been executed. Runtime Class If a batch contains multiple upgrade programs whose pre-requisites have been executed, these programs are started based on their runtime class. Each upgrade program belongs to one of these runtime classes: Huge Large Medium Small None First the upgrade programs with runtime class Huge are executed. Then the Large programs are executed. Subsequently the Medium programs are executed. Finally the Small programs are executed. Upgrade programs with Runtime Class None do not have to be executed, but can be a prerequisite for other programs. A task can have a higher runtime class than its prerequisite. During execution, the prerequisite gets this higher class. Simulation mode You can start a run in simulation mode. During a simulation, the Data Upgrade Engine runs the upgrade without actualizing the transactions. This is useful for testing purposes. See the online help of the Data Upgrade Engine (ttspt2201m000) session. For details on how to create and execute a data upgrade run, see Executing a data upgrade run. Performance and finetuning You can optimize the performance of the Data Upgrade Engine. See Performance and finetuning. Troubleshooting If one or more upgrade programs fail during a data upgrade run, use the troubleshooting procedure. See Troubleshooting. Error Recovery Each upgrade program runs in a separate process. The upgrade programs can return status information about the success or failure of the execution. Some statuses interrupt a part of the upgrade process. Other statuses only inform you that something went wrong, or that the upgrade program was executed successfully. If a fatal error occurs, such as error 606, "reference not found", only upgrade programs that are dependent on the failing upgrade program cannot be executed anymore. All other upgrade programs can still be executed. Logging Upgrade programs can generate reports of errors and changes. When you start a data upgrade run, you can indicate that only errors should be reported. You can access log information from the Data Upgrade Tasks (ttspt2520m100) session. Related topics Executing a data upgrade run Performance and finetuning Troubleshooting |