Adabas Timeout Feature

Each user who calls Adabas is assigned a user queue element (UQE) that indicates the nucleus resources allocated to the user. If a user calls Adabas and is then inactive for an extended period (for example, because a terminal operator leaves the terminal without logging off), that user's resources are locked and are not available to other users.

Adabas provides a timeout mechanism which prevents this potential waste of resources. The Adabas timeout function allows control of session-wide or individual user time limits for overall transaction time, and for specific user types.

This document covers the following topics:


Timeout Parameters

The following ADARUN timeout parameters can be set at nucleus startup:

Parameter Specifies the maximum elapsed time (in units of 1.048576 seconds) ...
TNAA an access-only user may be active without issuing an Adabas call.
TNAE an ET-logic user may be active without issuing an Adabas call.
TNAX an exclusive-control user may be active without issuing an Adabas call.
TT permitted for a logical transaction by an ET-logic user.

If not specified, a timeout parameter value defaults to 900 or slightly over 15 minutes.

These parameter values, which apply to all users in the session, can be overridden for a single user with an Adabas OP command for the user session. The maximum values for such OP command overrides are specified by the following ADARUN timeout parameters set at nucleus startup:

Parameter Specifies the maximum elapsed time (in units of 1.048576 seconds) ...
MXTNA any individual user may be active without issuing an Adabas call.
MXTT permitted for a logical transaction by an individual ET-logic user.

The Adabas ADADBS OPERCOM utility or Adabas Online System may also be used to change the timeout values.

The following section describes the specific actions taken for each type of timeout.

Action Taken If Time Limit Exceeded

This section lists the actions the nucleus may take when a time limit expires or the STOPU command is issued and describes the circumstances that determine the action.

Notes:

  1. The DELUI/DELUF operator commands, the ADADBS OPERCOM STOPI/STOPF commands with the PURGE option, or their Adabas Online System (AOS) counterparts are handled like STOPU.
  2. The STOPI/STOPF operator commands, the ADADBS OPERCOM STOPI/STOPF commands without the PURGE option, or their AOS counterparts are handled as a non-activity timeout.

Back Out Transaction

The nucleus backs out a transaction only for an ET user that has an open transaction.

The transaction is backed out for all kinds of timeout and for STOPU commands.

Release Command IDs

When the nucleus releases command IDs, it also erases the file list and deletes the ETID in the user queue element (UQE).

This action is taken for all TNAx timeouts and for the STOPU command.

It is not taken for a TT timeout.

Close User Queue Element

The nucleus closes the user queue element (UQE) for all TNAx timeouts when OPENRQ=YES and for the STOPU command.

Note:
If OPENRQ=YES is in effect for the session and a user does not start with an OP command, the user receives response code 9 (ADARSP009).

This action is not taken for TNAx timeouts when OPENRQ=NO (with one exception described in the next paragraph) or for a TT timeout.

The nucleus closes the UQE for a TNAE timeout when OPENRQ=NO only when the user

  • has no ETID;

  • has no open transaction; and

  • has not issued an OP command with R option.

Note:
When OPENRQ=NO and the UQE is closed, the user's next call does not receive a response code 9 (ADARSP009) because the nucleus no longer knows that it timed out the user.

Set Timeout Status in the UQE

The nucleus sets the timeout status when the UQE is not closed.

Note:
If a user issues a call and the timeout status is set in the UQE, the user receives response code 9 (ADARSP009).