About the Preprocessing Script

During the BPS installation process, certain database operations can consume so many system resources that it may fail to complete. To avoid this, you can run a preprocessing script, included with the BPS install, to perform several resource-intensive operations individually, outside of large database transactions.

Related Topics
The Installation Process
Database Considerations
Running the Preprocessing Script

This topic describes the large database schema update preprocessing script (LargeDBSchemaUpdate.tcl) that can be run before installing ENOVIA Business Process Services to large databases to enable the more resource-intensive operations to be performed individually, outside of large database transactions.

The following database operations can consume large amounts of system resources and are, therefore, run in the preprocssing script:

  • Mod Type Add Attr—Adding an attribute to a type that has a large number of instantiated objects.
  • Mod Type Remove Attr—Removing an attribute from a type that has a large number of instantiated objects.
  • Mod Rel Add Attr—Adding an attribute to a relationship that has a large number of instantiated objects.
  • Mod Rel Remove Attr—Removing an attribute from a relationship that has a large number of instantiated objects.

By default, the preprocessing script addresses all of these items with modification statements. You can commen out specific statements that you do not want to run, or you can run them in batches.

The script contains all the modify type and relationship MQL commands that add attributes to both of them from 8-0-0-0 to the latest versions to be installed. The pseudocode of the preprocessing script is as follows:

1. For each MQL command in the script:
   a) If attribute to be added does not exist, then:
      i. Add attribute
      ii. Register attribute with admin property name
      iii. Stamp attribute version to version of framework at which attribute is added
      iv. Stamp application property to frameworkfuture
   b) End if
   c) Modify type or relationship with attribute
   d) End if
2. End for