Detecting inter-transaction affinities

To manage transaction affinities in a dynamic routing environment, you must first discover which transactions have affinities. Use the CICS® Interdependency Analyzer to detect affinities.

About this task

For a description of the utility and how to use it, see CICS Interdependency Analyzer.
Note: If you dynamically route program-link requests, you must discover which programs (or their associated transactions) have affinities. You cannot use the CICS Interdependency Analyzer to do this.
If you do not use the CICS Interdependency Analyzer, you can use one of the following methods to detect affinities:
  • Use the CICS-supplied load library scanner, CAULMS.
    Note: From CICS TS for z/OS®, Version 3.2 the detector and reporter components previously provided as part of the CICS Transaction Affinities utility are not inlcuded in CICS TS. These components, as well as the load library scanner component, are incorporated in the CICS Interdependency Analyzer, which can analyze both interdependencies and affinities. The load library scanner alone remains in CICS TS for z/OS, Version 3.2, and can produce reports on application programs which have potential affinities.

    For details of how to use the CICS load library scanner, see the CICS TS 2.3 Transaction Utilities Guide.

  • Review application design, paying particular attention to the techniques used for inter-transaction communication.
  • Search the source of application programs, looking for instances of the EXEC CICS commands that can cause inter-transaction affinity.
  • Run a trace analysis program that can analyze CICS auxiliary trace. For example, if you run the CICS trace utility program, DFHTU680, with the ABBREV option to format CICS auxiliary trace output, you can analyze the resulting abbreviated trace data to find instances of suspect commands.

Inter-transaction affinities caused by application generators

Application generators can cause difficult problems of inter-transaction affinity:
  • The affinity can be hidden from the application programmer.
  • The application generator might have a different concept of a transaction to CICS: It is affinity among CICS transactions that is of concern, because these are the entities that are dynamically routed.
  • Some application generators use a single transaction code for all transactions within an application, making it difficult for the router to select those instances of transactions that have affinities.


dfhp3l1.html | Timestamp icon Last updated: Thursday, 27 June 2019