Previous Topic: Using a CEMT Force-Purge TransactionNext Topic: When Not Using an Abend Handler


When Using an Abend Handler

When a CEMT force-purge transaction is issued on a task that is waiting for a response from CA Datacom/DB, the following events occur.

  1. The first CEMT issued causes your abend handler to be invoked. If the abend handling routine issues a CA Datacom/DB request (such as ROLBK), CA Datacom CICS Services abends this transaction with an abend code of DC16. This is first handled by a CICS Recovery Manager that subsequently calls CICS SYNCPOINT processing, which then calls CA Datacom CICS Services with a SYNCPOINT backout indication. At this point, processing follows the situation discussed in Case 2. In such cases, there is an active request in CA Datacom/DB at the time of the force-purge.
  2. If the abend handler does not request an abend, one of the following occurs:

    Then normal transaction processing continues, and updated records are committed at SYNCPOINT processing time (which probably occurs during task termination). But if the abend handler issues an abend, the CICS SYNCPOINT ROLLBACK is invoked and backout occurs.

    Note: Even though an abend occurred, in this case the abend handler has the authority to create an abend or to continue processing as if no abend occurred, regardless of transactional dynamic transaction backout (DTB) settings. However, if the abend handler issues an abend, backout does occur.

The previous descriptions do not take into account other resource managers that may be involved nor their states at the time of the CEMT force-purge.