The scanner component, The detector component – IBM Transaction Server OS User Manual

Page 28

Advertising
background image

The Scanner component

The Scanner is a batch utility that scans a load module library to detect those
programs in the library that issue EXEC CICS commands that may cause
transaction affinity. It examines the individual object programs looking for patterns
matching the argument zero

3

format for the commands in question.

The Scanner detects the use of the EXEC CICS commands listed in Table 1 on
page 11
, and MVS POST requests.

The report produced by the Scanner indicates only that potential affinity problems
may exist because it only identifies the programs that issue the commands. It
cannot obtain dynamic information about the transactions using the programs, or
the names of the resources acted upon. Use the report in conjunction with the main
report produced by the Reporter (see “The Reporter component” on page 18).

Notes:

1. The Scanner operation is independent of the language the scanned program

was written in and the release of CICS the scanned program was translated
under.

2. The Scanner may indicate an affinity problem that does not really exist, because

the bit pattern found accidentally matches the argument zero format for an
affinity command.

3. The Scanner does not detect CICS macro-level commands.

4. The Scanner distinguishes between ENQ by name and ENQ by address based

on the presence of a length parameter on the EXEC CICS ENQ command. It
does the same for DEQs. The reports show which ENQs and DEQs are by
name and which are by address.

The Detector component

You can use the Detector in real-time to detect transaction affinities in a running
CICS region, and to save details of the affinities in an MVS data space. This data is
subsequently saved to DASD. The Detector consists of:

v

A control transaction, CAFF

v

An autosave transaction, CAFB

v

Some global user exit programs

v

A task-related user exit program

This is shown in Figure 3 on page 13.

The data is collected by the global user exit programs at exit points XEIOUT,
XBADEACT, XMEOUT, and XICEXP, and a task-related user exit at task start and
task end. Between them, these exit programs intercept all the EXEC CICS
commands and other events (pseudoconversation end, terminal log off, user sign
off) that are needed to deduce the affinities and their relations and lifetimes. These
exit programs coexist with any other exit programs at the same exit points. (They
can be placed before or after other exit programs, without any of the exit programs
being affected.)

3. For an explanation of argument zero, see “Notes on terminology” on page x.

12

CICS Transaction Affinities Utility Guide

|
|
|
|

|

Advertising