Consultor Eletrônico



Kbase P14650: Opening queries causes srt file to grow were comparable FOR EACH statement does not
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   11/08/2008
Status: Verified

SYMPTOM(s):

Opening queries causes srt file to grow were comparable FOR EACH statement does not

Using a query to sequentially read a large number of records

Loop fetching records via query runs slower than a comparable FOR EACH loop

srt client temp-file grows to large size

FACT(s) (Environment):

Progress 9.x
OpenEdge 10.x
OpenEdge Category: Language (4GL/ABL)
All Supported Operating Systems

CAUSE:

This is expected behavior.

Unlike the FOR EACH statement, queries have the possibility to be navigated backwards and to be repositioned to specific records. To support this behavior, queries have to maintain a result list, which will be stored in the srt file if it can't fit in memory.
The size of the result list is directly related to the number of records that match the query criteria.

FIX:

Starting with the Progress 9.1D05 and OpenEdge 10.0A releases, the use of result lists for queries can be suppressed by using the FORWARD-ONLY attribute of the query.