TST—temporary storage table

The temporary storage table (TST) is a list of generic names (or prefixes) used to identify sets of temporary storage queues. Any unique temporary storage identifier generated dynamically in an application program that begins with the same characters as the generic names automatically acquires the same properties as the TST entries.

CICS® still supports the use of the DFHTST macro in combination with or in place of TSMODEL resource definitions. You must use a TST in the following circumstances:
  • You have application programs that reference temporary storage data sharing queues by specifying an explicit SYSID on EXEC CICS temporary storage commands.
  • A SYSID is added for EXEC CICS temporary storage commands by an XTSEREQ global user exit program.
  • You require the TSAGE attribute.
For temporary storage queues where you do not require these functions, you can use TSMODEL resource definitions, which provide all other functions of the TST and some additional functions.

The default TST=NO system initialization parameter means that CICS initializes with only RDO support for TS queues. To use a TST in combination with TSMODEL resource definitions, you must specify a TST suffix using the TST system initialization parameter. You must also assemble the TST load module with the MIGRATE option. If the TST is not assembled with the MIGRATE option, CICS loads the TST only and does not provide any RDO support for TS queues, and any attempts to install TSMODEL resource definitions are rejected.

If you use both a TST and TSMODEL resource definitions, the use of the TST is limited to the following:
  • Support for TS data sharing queues that are referenced by an explicit SYSID option specified on a TS API command.
  • The TSAGE attribute.
If you use a TST alone, all the functions of the TST are used.

Generic names

In a TST, generic names are formed from the leading characters of the appropriate queue names, and can be up to seven characters long.
  • The generic names coded on a DFHTST TYPE=RECOVERY macro identify queues for which CICS provides backout of changes in the event of transaction failure or protection against system failure.
  • The generic name coded on a DFHTST TYPE=REMOTE macro identifies queues for which CICS routes the temporary storage request to a remote CICS region or TS server, unless the remote system name (SYSIDNT) is the same as that of the local CICS. If SYSIDNT is the same name as the local CICS, the queues specified by the DATAID option are treated by CICS as local queues.
  • The generic name coded on a DFHTST TYPE=LOCAL macro identifies queues as local queues that reside in the CICS region in which the TST is installed.
  • The generic name coded on a DFHTST TYPE=SECURITY macro identifies queues for which resource security checking is required.
If you specify an eight-character name, this defines a unique temporary storage queue name.

Choose a naming convention for queue names that enables you to define many queues with only a few generic names. This reduces considerably the task of TST definition. Bear in mind that CICS searches the TST for the first prefix that satisfies the particular search criteria. For example, if CICS searches for temporary storage queue ABCDEFGH, and the TST contains prefix A followed by prefix AB, A is selected. To avoid any problems, define the less-generic entries to the TST before any more-generic entries, so that the first to be found is the least generic of all possible matches.

When CICS is looking for generic names to match against a TS queue name, it searches only the types of entry in which it is interested for that particular search. CICS searches:
  • Local and remote entries when determining whether a queue is remote. Thus, local and remote entries are regarded as one search category when CICS is matching a queue name against generic names.
  • Recovery and remote entries when determining whether a queue is recoverable. However, if the leading characters of a queue name match both TYPE=RECOVERY and TYPE=REMOTE generic names, TYPE=REMOTE takes precedence, and the recovery option must be redefined in the local region in which the queue resides. (Queues in a shared TS pool cannot be recoverable.)
  • Security entries only when determining whether a queue is subject to security.
Use these macros to define the TST entries:
  • Control section—DFHTST TYPE=INITIAL
  • Recoverable temporary storage—DFHTST TYPE=RECOVERY
  • Local temporary storage—DFHTST TYPE=LOCAL
  • Remote temporary storage—DFHTST TYPE=REMOTE
  • Temporary storage security checking— DFHTST TYPE=SECURITY
  • Temporary storage data sharing—DFHTST TYPE=SHARED
  • End of temporary storage table—DFHTST TYPE=FINAL (see TYPE=FINAL (end of table))