Consultor Eletrônico



Kbase P150987: Compiling code on 10.2A01 takes between 3 and 8 times as long as 10.1B02
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   31/03/2010
Status: Verified

SYMPTOM(s):

Compiling code on 10.2A01 takes between 3 and 8 times as long as 10.1B02

Code has reference to COM-handle stored in temp-table field (ttTable.chComHandleField:com-property)

FACT(s) (Environment):

Both versions reading from and writing to same file system
Both versions using the same very long PROPATH
OpenEdge 10.2A
All Supported Operating Systems

CAUSE:

Enhancement Request# OE00192261

CAUSE:

In 10.1C and later, the compiler tries to resolve the reference as a class reference first. To do so, it will search the PROPATH for ABL classes (either in .cls or .r format).
In 10.2A the .NET assemblies are searched as well.

These additional searches introduce a substantial overhead, resulting in the performance loss.
The enhancement request seeks to address this performance loss.

FIX:

Enhancement Request# OE00192261 has been implemented.

Upgrade to OpenEdge 10.2B or later

Workaround:
To reduce the impact of the issue, consider the following.

Because the change of behavior introduces more PROPATH searches, the performance loss depends largely on:

- The length of the PROPATH -> the number of entries determines the number of search operations performed
- References to remote file systems in the PROPATH -> these can introduce more overhead as they require network traffic

Therefore, keeping the PROPATH as short as possible and keeping the code on a local disk will reduce the impact.