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.