Adabas

The Com-plete Application Programming documentation describes the call interface to Adabas. This call interface provided by Com-plete deals exclusively with Com-plete timing, rolling and statistics. The Adabas linkage is provided by separate ADALNK modules.

This document covers the following topics:


General Usage

All Adabas calls are issued in the key of the thread itself. As there is a requirement to sometimes roll out a user over an Adabas call, the Adabas interface requires that it can get its UB area and a certain amount of its workarea outside of the thread and in the same key as the thread. For this reason, an Adabas buffer pool is built with subpools of the same size but in different storage protect keys.

The size of the Adabas workarea is dependent on the various parameters set in the ADALCO module when it is created. It is possible to have a user length and a Review length included in the calculation for the Adabas workarea in this way.

If no Adabas buffer pool is specified by the user, Com-plete will allocate one.

It is recommended that users calculate their Adabas usage and build their Adabas buffer pool accordingly. You must build a buffer pool with a subpool available in every key in which an Adabas call will be issued. If an Adabas call is issued in a key for which no subpool exists, the subpool will be created but this in itself is an additional overhead. Software AG recommend that a subpool be created for each key in which an Adabas call can be issued in the Com-plete region.

You must now determine how many Adabas work areas will be required at the same time in each subpool. Software AG recommend that the resultant figure be increased by 20% to allow for peaks and future use. If the subpool fills, it will expand if the virtual storage is available but again, this is an overhead. If the subpools are well allocated and their usage monitored closely, it should be possible to increase or decrease the specification as required.

The Adabas work areas will be allocated above the line per default. Only when ADALCO and/or ULOPADAB are not linked AMODE 31 the Adabas buffer subpools will be allocated below the line.

ADALNK Features

The ADALNK features of user exits and data passing are supported by the Com-plete interface:

  • User exits
    If required, you can link the UEXITB and UEXITA routines with the supplied ADALNK module. The ADALNK routine is called in the AMODE in which the MCALL Adabas was issued, this also applies to UEXITB and UEXITA. You must ensure that the return is made in the correct mode, that is, in the mode in which he was entered. Please note that parameters passed from Natural can reside above the 16 MB line.

  • Data passing
    The information on ADALCO and the Adabas work area provided in the previous section is also valid for ADALNK.

A full description of these features is contained in the Adabas documentation.