Communicator 3000 MPE/iX Release 6.0 (Platform Software Release C.60.00) (30216-90269)

Chapter 10 161
Technical Articles
IMAGE/SQL with TurboIMAGE/XL Enhancements
Performance Enhancement for Databases with
Third-party Indices (TPI)
TurboIMAGE/XL intrinsics DBGET and DBFIND are enhanced for
improved performance in the following circumstances when the
database is enabled for TPI:
DBFIND and DBGET when the set does not have TPI and the trace
facility, if applicable, is turned off.
Serial DBGET (modes 2 and 3) for a set with TPI when the mode need
not be promoted to other mode (possibly a chained mode) by the
third-party software.
Chained DBGET (modes 5 and 6) for a DBFIND of an IMAGE search
item or a B-Tree item for a set with TPI.
In order to attain the performance gain, you must obtain the version of
the third-party software which supports this enhancement. In the
absence of either one of the needed software products (TurboIMAGE/XL
or third-party product), DBFIND and DBGET will continue to work as
they do in the absence of this enhancement. That is, TurboIMAGE/XL
and the third-party products are backward compatible for this
enhancement.
DBSCHEMA and P Type with Odd Sub-Item
Length
DBSCHEMA is enhanced to generate an error when the sub-item length
of the datatype P is odd, even if the product of sub-item count and
sub-item length is divisible by 4. For example, DBSCHEMA will flag the
data items 4P1 or 8P3 as invalid. Although syntactically correct, none
of the major languages can use them. This change will not affect
existing databases. That is, if you currently have databases with P type
defined using odd sub-item length and sub-item count such that their
product is divisible by 4, you may continue to use it without any
problem when creating a new database. The default for DBSCHEMA is to
generate an error in this situation. If you want to create a new database
with P data type having odd sub-item length, you will need to use the
new CONTROL option, $CONTROL ODDPALLOWED.
B-Tree Indices
You can create a B-Tree index on the master data set's key item and
perform B-Tree index searches using the key item as well as all of its
corresponding detail data set search items. The B-Tree index searches
are done using DBFIND with a master or detail data set and its key or
search item respectively. The qualified entries can be retrieved using
DBGET mode 5 or 6.