Transaction and thread failures
If a transaction fails in DBCTL, the CICS® transaction is abended.
If a transaction fails in CICS when a DL/I request it has
issued is being processed in DBCTL, the error is passed to the DBCTL thread.
When a transaction terminates, the thread allocated to it is released and
a record is written to the IMS log. If there is an error, a return code is returned
to the application in the usual form:
- For command level requests, this is to the DL/I interface block (DIB) as a status code, or transaction abend. (Definitive Programming Interface and Associated Guidance Information on what is returned to the DIB is in IMS messages and codes in IMS product documentation.)
- For call level requests, it is to the user interface block (UIB) as a PCB status code or a transaction abend. (Definitive Programming Interface and Associated Guidance Information on what is returned to the UIB is in DL/I calls reference in IMS product documentation.)
(Response codes for a DBCTL environment are in Summary of DBCTL abends and return codes.)
In some cases, other resources may not have been backed out, but DL/I backout has taken place. In these cases, one of the following status codes will be returned: BB, FD, FR, FS. You can also receive the FD status code on a call to a full function database if the PSB for the program (BMP) has a DEDB PCB. See Status codes and backout for actions you should take if this happens.