IMS Connect recorder trace for TM error scenarios
For IMS Transaction Manager (TM) transactions, IMS Connect (ICON) will return error codes with either the OTMA sense code, the ICON error codes in OMUSR_RETCODE and OMUSR_RESCODE, or the error message in the application data.
ICONSN Record
The ICONSN record traces messages ICON sent to the client. If an error occurs in ICON or an error is returned from OTMA, the error codes and messages can be found in the ICONSN trace.
Example Scenarios:
- When a security violation with userid NOT AUTHORIZED occurs, ICON sends an error response to the client with DFS1292E SECURITY VIOLATION in the application data.
- When a transaction request to a stopped transaction occurs, ICON sends an error response to the client with DFS065 TRAN/LTERM STOPPED in the application data.
- When a ResumeTpipe request to DATASTORE is stopped in ICON and is in a disconnected state, ICON sends an error response to the client with error code OMUSR_RETCODE=4 OMUSR_RESCODE='STP/CLSE.
- When a ResumeTpipe request to an invalid data store is made, ICON sends an error response to the client with error code OMUSR_RETCODE=4 OMUSR_RESCODE='NFNDDST'.
- The client issues ResumeTpipe Single Wait Forever and then the client sends data on the same connection. After sending the ResumeTpipe Wait Forever request to OTMA, ICON issues a TCP/IP read on the socket connection to check for client disconnects. TCP/IP read returns Return_value=10, Return_code=0, and Reason_code=0. The positive Return_value means the client sent data, which ICON flags as a protocol violation because ICON is in the middle of a ResumeTpipe request. ICON issues a HWSP1495E message to the MVS console (HWSP1495E OTMA PROTOCOL VIOLATION; R=20, C=CLIENT02, DS=IMS1, M=SCVC).
ICONER Record
The ICONER record traces errors when ICON is not able to send a response to the client.
Example Scenarios:
- On a Send-only transaction with an invalid transaction name, OTMA sends ICON an error response with sense code x1A and reason code x1D. However, ICON cannot send the error response to the client because ICON does not send any messages back to the client when Send-only protocol is used. The OTMA response message will be captured in the ICONER record trace.
ICONTO Record
The ICONTO record traces timeout conditions.
Error scenarios without trace records
There are some scenarios where ICON does not capture the trace record of the error codes or error messages that occur in either IMS Connect or OTMA.
Example Scenarios:
- The client issues ResumeTpipe Single Wait Forever and then the client application is terminated as an ungraceful shutdown. The ICON’s TCP/IP read (BPX1RED) returns Return_value=-1 which indicates a session error. TCP/IP read returns Return_value=-1, Return_code=1121, and Reason_code=1990066833 (x769E0291). ICON issues a HWSP1415E message to the z/OS system console. The recorder trace captures the ICONRC record, but there are no other recorder traces because no message is sent back to the client after termination.
- The client issues ResumeTpipe Single Wait Forever and then the client closes socket connection with the TCP/IP disconnect call. After sending the ResumeTpipe Wait Forever request to OTMA, ICON issues a TCP/IP read on the socket connection to check for client disconnects. When the client closes the connection, ICON’s TCP/IP read (BPX1RED) returns Return_value=0, which indicates the client has closed the connection. TCP/IP read returns Return_value=0, Return_code=0, and Reason_code=0. The recorder trace captures the ICONRC record, but there are no other trace records because no message was sent back to the client.