IMS Synchronous Change Data Capture Considerations
IMS Synchronous Change Data Capture Considerations
The following considerations pertain to IMS synchronous change data capture:
You can capture changes to both keyed and non-keyed segments.
For non-keyed or non-uniquely keyed segments, the IMS synchronous ECCR generates an 8-byte field that contains the relative byte address (RBA) of the segment. This RBA value is passed to the PowerExchange Logger where it is logged along with the change data.
To use this RBA value to create a unique key field for the segment, you must create a user-defined field in the data map for the segment. Use the GetIMSRBAByLevel function in an expression to populate this field with the captured RBA value. The GetIMSRBAByLevel function enables you to get the RBA of an unkeyed or non-uniquely keyed parent segment. Then use the altered data map to create the extraction map.
Reorganizing the IMS source database changes the RBA values of its segments. To ensure that the generated RBA value in the target is associated with the correct source data record, rematerialize the target table from the source if the source is reorganized.
If you need to capture changes for paired logical children, use the following guidelines:
For virtual pairings, propagate changes from the physical child.
For physical pairings, use the child that contains the physical dependent segments from which you plan to propagate changes.
In an online environment, the IMS synchronous ECCR runs as an IMS external subsystem. In this environment, IMS does not support the SETS function. However, IMS supports the SETU and ROLS functions for applications that accept the SC and RC status codes. If your application accepts the SC and RC status codes, the IMS synchronous ECCR can capture change data from the SETU and ROLS functions.
In an IMS DBCTL environment, PowerExchange IMS synchronous CDC requires the IMS external subsystem of the ECCR to be running to capture CICS transactions. Informatica recommends that you do
not
stop the IMS external subsystem while IMS synchronous CDC is running.
If IMS synchronous change data capture stops for any reason and updates to the data in the IMS source database are made while capture is down, PowerExchange cannot capture those changes after you activate capture again. Change capture might stop because a /SSR
x
EDP-ABORT command was issued or because a PowerExchange CDC component such as the PowerExchange Logger or PowerExchange Agent ended abnormally.
If PowerExchange cannot capture changes and you specified ABEND for the Change Capture Error parameter at installation or for the corresponding CCERR parameter in the EDMSDIR options module, or if you issued the /SSR
x
EDP-ABORT command, IMS online transactions and BMP batch jobs that update an IMS database might also abend if PowerExchange determines that the database is of interest or of possible interest to change capture. If PowerExchange determines that the database is not of interest to change capture, the transactions and BMP batch jobs do not abend. If a DL/I batch job attempts to start while change capture is down, the job abends. If a DL/I batch job is active when change capture stops, the job abends when it attempts to access the database of interest or when it attempts to access any other database for the first time.