sortaccess

SORT-ACCESS found in xref on table [tablename]

Rule "sortaccess" scans the XREF file and gives this warning when it finds "SORT-ACCESS".


This happens when you use the BY option in a query, while the specified
BY order is such that Progress can not select an existing index that completely fits. This means that Progress will
have to sort the result-set "on the fly" before it presents the results to the program.

the risc:

Sorting is noticeable slow if the result-set contains many records.

how to solve this:

Make sure the result-set is small by specifying a really restrictive WHERE-clause. Or: change the design of
the program so you can accept the sort order of an already existing index. Or: add a new index to the table.

note:

When Prolint gives this warning and also a "no WHERE-clause used" warning for the same line (see rule nowhere), then you
are pretty sure that performance will be bad.


Even worse: when Prolint gives this warning and also a "WHOLE-INDEX" warning (see rule wholeindex), then you
should really worry about performance.

How to suppress these warnings:

Directive {&_proparse_ prolint-nowarn(sortaccess)} does not help, because this rule only reads the XREF file and is not based on proparse.
You might use file "nowarn.lst" in directory prolint/settings or one of its subdirectories.
See also: suppress warnings.