Table of Contents

Search

  1. Preface
  2. Part 1: PowerExchange Change Data Capture Introduction
  3. Part 2: CDC Components Configuration and Management
  4. Part 3: CDC Sources Configuration and Management
  5. Part 4: Change Data Extraction
  6. Part 5: Monitoring and Tuning
  7. Appendix A: CDC for z/OS Troubleshooting
  8. Appendix B: DTL__CAPXTIMESTAMP Time Stamps

CICS/VSAM CDC Use of CICS Global and Task-Related Exit Points

CICS/VSAM CDC Use of CICS Global and Task-Related Exit Points

PowerExchange uses several CICS global exit points and a single task-related user exit point during CICS/VSAM CDC.

CICS Global Exit Points

PowerExchange uses the following global exit points:
XFCFRIN
Exit point for invoking the PowerExchange EDMKIR
nn
exit program before a CICS File Control Domain request such as READ, WRITE, DELETE, or REWRITE. This exit program enables the CICS/VSAM ECCR to capture changes to VSAM files that are registered for CDC. Use the XFCFRIN exit point with the XFCFROUT exit point.
If the EDMKIR
nn
exit program at the XFCFRIN exit point detects any DELETE operation that uses the RIDFLD operand. The exit program reads the record as an UPDATE and then issues another DELETE without the RIDFLD operand. The exit program at the XFCFROUT exit point can then capture and log all of the required information for the deletion.
The XFCFRIN and XFCFROUT exit points do not support the processing of backouts for recoverable ESDS data sets. For backout processing of ESDS data sets, use the XFCLDEL and XFCBOUT exit points.
The suffix
nn
in the EDMKIR
nn
, EDMKCT
nn
, EDMKBO
nn
, and EDMKLD
nn
exit program names corresponds to the second and third digits of the CICS TS internal release level for the CICS TS version. For example, the program EDMKIR71 corresponds to CICS TS internal release level of 0710, which is for CICS TS 5.4. The following table shows the suffix for each CICS TS and internal release level:
CICS TS Release Level
Internal CICS Release Level
Exit Program Suffix (
nn
)
5.1
0680
68
5.2
0690
69
5.3
0700
70
5.4
0710
71
5.5
0720
72
5.6
0730
73
6.1
0740
74
6.2
0750
75
XFCFROUT
Exit point for invoking the PowerExchange EDMKIR
nn
exit program after a CICS File Control Domain request. This exit program enables the CICS/VSAM ECCR to capture changes to VSAM files that are registered for CDC and transmit the changes to the PowerExchange Logger for z/OS. Use the XFCFROUT exit point with the XFCFRIN exit point.
The XFCFROUT and XFCFRIN exit points do not support the processing of backouts for recoverable ESDS data sets. For backout processing of ESDS data sets, use the XFCLDEL and XFCBOUT exit points.
XFCSREQ
Exit point for invoking the PowerExchange EDMKCT
nn
exit program before a data set OPEN request is processed. At this CICS exit point, the CICS/VSAM ECCR determines whether the data set that is being opened is registered for change data capture. If the data set is registered, change data capture will be active for this data set.
XFCSREQC
Exit point for invoking the PowerExchange EDMKCT
nn
exit program after a successful file OPEN or CLOSE request with a return code of 4 or lower and after a failed OPEN request. If an OPEN request is successful and the data set is registered for change data capture, the exit program retains the Change Capture Directory entry for the data set. If the OPEN request fails, the exit program removes the Change Capture Directory entry for the data set.
XFCLDEL
Required only for recoverable ESDS source data sets in an online CICS TS environment. Exit point for the following exit programs that are required to process transaction backouts for a recoverable ESDS data set that is registered for change data capture, when a transaction abend or syncpoint rollback occurs:
  • A
    user-defined
    program that marks the backout records as logically deleted and then writes them back to the ESDS data set. You must logically delete backout records because CICS TS does not provide a mechanism to directly delete these records from an ESDS data set. To define this program, you can customize the IBM-supplied sample program in the DFH$LDEL member of the CICS SAMPLIB library. Then install the customized backout exit program at the XFCLDEL exit point using the TBEXITS system initialization parameter. Typically, a logical deletion is indicated by setting the first character (or byte) of the record to X'FF'. When a record is marked as logically deleted, the CICS/VSAM ECCR is able to determine that the before and after images of the record are different and generate an appropriate change record. The change record is then sent to the Power Exchange Logger for z/OS.
    Alternatively, use the sample program EDMKLD
    nn
    that PowerExchange provides in the SAMPLIB library. The
    nn
    suffix in the sample program name corresponds to the actual CICS TS release level, for example, "54" for CICS TS V5.4. This PowerExchange sample program is similar to the IBM-supplied sample program DFH$LDEL.
  • The PowerExchange EDMKLD
    nn
    program that is invoked whenever a WRITE operation on a VSAM ESDS data set is backed out. In this program name,
    nn
    represents the CICS TS version. The program retrieves the after image of the backed-out record that was logically deleted and then generates an UPDATE record that contains both the before and after images. The generated record is written to the Change Capture Log. In this manner, the CICS/VSAM ECCR processes the logically deleted record as an UPDATE to prevent transaction backout failures and the generation of numerous error messages. This processing avoids data integrity issues in the CDC environment that are caused by backout failures.
    This exit program must be the last program enabled at the XFCLDEL exit point. You can use the EDMC XPGM command to verify that this program is last.
Use the XFCLDEL exit point with the XFCBOUT exit point.
XFCBOUT
Required only for recoverable ESDS source data sets in an online CICS TS environment. At CICS/VSAM ECCR initialization in the CICS region, the EDMKBO
nn
program is installed at this global exit point. In the program name,
nn
represents the CICS TS version. This program captures the before image of each record in a recoverable ESDS data set that is to be backed out because of a transaction abend or syncpoint rollback. The program runs before CICS attempts to back out each record. PowerExchange CDC uses the EDMKBO
nn
program at the XFCBOUT exit point with the EDMKLD
nn
program at the XFCLDEL exit point to get both the before and after images for the backed out record.
The following considerations apply to using these global exit points:
  • To enable and activate all of the PowerExchange CDC exit programs at the global exit points at CICS initialization, you can specify an entry for the EDMKOPER program in the CICS PLTPI system initialization parameter. The EDMKOPER program enables these exit programs during the second phase of program load table (PLT) processing at CICS startup.
  • All of the PowerExchange CDC exit programs at the global exit points can process only uncompressed data records.
  • If you issue the CICS/VSAM ECCR command EDMC INIT, the EDMC transaction both initializes the ECCR and dynamically installs the appropriate CICS/VSAM CDC exit programs at the XFCFRIN, XFCFROUT, XFCSREQ, XFCREQC, XFCSREQC, XFCBOUT, and XFCLDEL exit points.
  • If other exit programs in the CICS region are installed at the same global exit points that CICS/VSAM CDC uses, the PowerExchange-supplied exits might not get control in the correct order. In this case, the CICS/VSAM ECCR might not capture change data properly. Ensure that the other exits do not affect the processing of the PowerExchange-supplied exits.
    CICS gives control to the exits based on the order in which they are enabled in CICS.
  • To determine whether the CICS region has other exit programs installed at one of these global exit points, use the CICS CECI transaction with the following system commands to browse the exit list:
    INQUIRE EXITPROGRAM EXIT(
    global_exit_point_identifier
    ) START INQUIRE EXITPROGRAM NEXT INQUIRE EXITPROGRAM END
    For more information about the CECI transaction and INQUIRE EXITPROGRAM command, see the IBM CICS Transaction Server system programming reference.
    Alternatively, you can use the CICS/VSAM ECCR command EDMC XPGM or EDMC EXITPGMS to display the global exit points and task-related user exit points that are used by the PowerExchange exit programs and any other exit programs that are enabled at the same exit points. For more information, see the
    PowerExchange Command Reference
    .
  • If the CICS/VSAM ECCR captures change data from a recoverable ESDS data set and you use multiple exit programs at the CICS XFCLDEL global exit point, ensure that the EDMKLD
    nn
    exit program is last. The EDMKLD
    nn
    exit program must be the last exit program called at this exit point by the CICS services.
  • When multiple exit programs are defined at the XFCLDEL exit point for a registered ESDS data set, the EDMKLD
    nn
    exit program sets the return code to UERCLDEL instead of percolating any return codes from prior exit programs.

CICS Task-Related User Exit

CICS/VSAM CDC uses a single CICS task-related user exit (TRUE) to capture relevant syncpoints and UOW information for each task that updates a registered data set. The ECCR uses this information to coordinate syncpoint processing with the PowerExchange Logger for z/OS and to handle ECCR requirements related to CICS shutdown processing.
You can use the CICS/VSAM ECCR command EDMC XPGM or EDMC EXITPGMS to display the task-related user exit points and global user exit points that are used by the PowerExchange exit programs and any other exit programs that are enabled at these same exit points. For more information, see the
PowerExchange Command Reference
.

0 COMMENTS

We’d like to hear from you!