Kbase P26484: Why does the Data Dictionary load of my .df file take so long?
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  11/13/2008 |
|
Status: Verified
GOAL:
Why does the Progress 9.1x Data Dictionary load of my .df file take so long?
GOAL:
Why does it take to so long to load a .df via the Data Dictionary?
GOAL:
What happens when a .df file is loaded via the Data Dictionary?
FACT(s) (Environment):
UNIX
Windows
Progress/OpenEdge Product Family
FIX:
During a .DF file load (when metaschema is being created), there is certain information that the client must assign. This assignment is done within a "schema trap". Some schema traps fire as soon as a field is assigned by the 4GL, others need to be done when all information is available (which may not come until later in the load process). Once the traps start to fire, the 4GL does not have control of the process until all are done(thus communication to the OS interface is temporarily unreachable). After the assignment of all the information is finished, control is returned to the 4GL and the user can interact with the tool again. Below is a simple description of the functions that the schema trap layer performs. The information here is not organized in order of operation, but it does provide a general idea of what the schema trap layer does do.
- Performs validation that can't be performed while performing Data Dictionary maintenance
- Creates & updates the template records. Template records provide the initial image of a newly created record, based on the initial values of a table's fields.
- The default indices for each table added are created.
- Builds the field map information.
- Performs all sequence post processing.
- Builds the mandatory field array for each table.
- Updates Progress maintained fields in the schema records. (For example, the physical position of a field is updated).
- If triggers are present, perform trigger fix ups.
- Calculates schema CRC's.
- Builds any active index.
- Updates the _file record with calculated information based on the index changes.(For example, the number of key fields and primary index number.)
- Updates other schema information that can not be performed by the 4GL code.
- Updates SQL-92 specific fields for tables and fields and other schema tables.
- Updates the internal schema cache.