Before implementing CICS/VSAM CDC, consider its requirements and restrictions.
The CICS/VSAM ECCR can capture changes only from local VSAM ESDS, KSDS, RRDS, or VRRDS data sets and
CICS-maintained
data tables.
If you specify CCERR=ABEND in the EDMSDIR options module and the ECCR abends or encounters an error during initialization, PowerExchange performs one of the following actions to ensure data integrity:
Ends and backs out in-flight CICS transactions on VSAM source files during syncpoint processing.
If necessary, shuts down the CICS region, as if you had issued the CICS command CEMT PERFORM SHUTDOWN IMMEDIATE NORESTART.
In production environments where data integrity is important, specify CCERR=ABEND. If you specify CCERR=CONTinue instead, data integrity might not be maintained.
In CICS, define VSAM source data sets as recoverable by using the RECOVERY(BACKOUTONLY) or RECOVERY(ALL) option. Alternatively, you can define VSAM data sets other than ESDS data sets as nonrecoverable by using the RECOVERY(NONE) option under either of the following circumstances:
You specify CCERR=CONTinue in the EDMSDIR options module and specify the AllowRecoveryNone option in the INITPARM statement for the EDMKOPER module.
You specify CCERR=ABEND in the EDMSDIR options module.
You must define ESDS data sets as recoverable for the ECCR to properly handle backouts of WRITE requests during CDC processing. If you define an ESDS file with the RECOVERY(NONE) option and specify the AllowRecoveryNone option in the INITPARM statement, the ECCR captures change data for the ESDS data set but cannot process backouts. CICS does not perform backout processing for nonrecoverable data sets when a transaction abend occurs or a SYNCPOINT ROLLBACK request is made.
The CICS/VSAM ECCR must be active in each CICS region that owns VSAM files from which you capture changes.
If a CICS transaction updates CICS/VSAM files and other data sources outside of the CICS region in the same unit of work, for example, DB2 tables or IMS databases, the CICS/VSAM ECCR captures only the changes to the CICS/VSAM files.
To apply changes from multiple data source types to targets in the order that the changes were made by a CICS transaction, use a staging table. For each data source type, extract the changes and insert them into the staging table. Include the PowerExchange-generated DTL__CAPXTIMESTAMP column. Then, extract changes from the staging table, in sequential order based on the DTL__CAPXTIMESTAMP values, and apply the changes to the target tables in that order.
The CICS/VSAM ECCR can capture change data from ESDS data sets that use both the 32-bit relative bye addressing (RBA) and 64-bit extended relative byte addressing (XRBA). However, the ECCR does not capture change data for the following types of ESDS items:
Spanned ESDSs
Paths defined over ESDSs
An alternate Index (AIX) that points to an ESDS base cluster
In the log records that the ECCR generates, the RBA is always stored right-justified in an 8-byte field, regardless if it is a 4-byte 32-bit address RBA or an 8-byte long 64-bit extended RBA.