Chapter 15. IMS Connect client diagnostics 305
If the original interaction was running under commit mode 1, and the sync level was set
to CONFIRM or SYNCPT, the transaction is backed out and the region abends with
U0119.
If the original interaction was running under commit mode 0, the transaction is
committed and the response will be deemed undeliverable. The response is:
Purged (discarded) if you specified PURGE NOT DELIVERABLE in the IRM
header.
Rerouted to the specified or default destination if you specified REROUTE in the
IRM header.
Queued to the asynchronous hold queue of the Tpipe corresponding to the clientID
used for the interaction.
15.3.2 OTMA protocol error (reason code 36)
You will encounter this error when your program sends a message to IMS Connect that is out
of sequence with the input that IMS Connect expects. For example, IMS Connect will send
this error if you send a new request when it is waiting for an ACK for the previous request.
Example 15-8 shows an example of such an error, as it appears in the IMS Connect system
log.
Example 15-8 IMS Connect JES2 log OTMA protocol error message
HWSP1495E OTMA PROTOCOL VIOLATION; R=20, C=CLIENT01, M=SDRC
If you have IMS Connect Extensions installed, use its trace analysis features to diagnose this
problem. If you do not have IMS Connect Extensions, you can use the recorder trace to learn
the sequence of events previous to the error.
15.3.3 Other errors
In general, the steps to diagnose a failing IMS Connect application are more or less the
same:
Look at the SYSLOG and the SYSPRINT of the IMS Connect you are using. If you find an
error message there, look for this message in IMS Connect Guide and Reference,
SC18-9287.
Note: The CANCEL TIMER mechanism is intended to free a clientID that is blocked
because a client program was prematurely disconnected, perhaps because of a
network failure. Do
not rely on CANCEL TIMER to avoid the DUPECLNT error after a
socket timeout caused by an incorrect timeout value. Always set the socket timeout to a
value greater than the IRM_TIMER value. If you use CANCEL TIMER to systematically
address problems due to the incorrect settings of the socket timeout, IRM
TIMER/ExecutionTimeout, or IMS Connect TIMEOUT, you will encounter performance
problems.
Note: If you are using IMS Connector for Java Version 2.2.2 or earlier, you will see this
error message (and the corresponding IMS Connector for Java exception) if you send a
transaction that generates multiple IOPCB responses under commit mode 0. Update your
IMS Connector for Java resource adapter to Version 2.2.3, 9.1.0.2, 9.1.0.1.1, or later.
306 IMS Connectivity in an On Demand Environment: A Practical Guide to IMS Connectivity
Try to reproduce the problem after enabling the IMS Connect recorder trace (see
Chapter 5, “IMS Connect operations” on page 63 for details) and analyze the trace
records.
If you are using IMS Connector for Java in WebSphere Application Server, try to
reproduce the problem after enabling WebSphere Application Server tracing for IMS
Connector for Java (see the “Logging and tracing with the IMS resource adapter” topic in
the online help of WebSphere Studio Application Developer Integration Edition or Rational
Application Developer. This document can also be found in PDF format on the IMS Web
site under IMS Connector for Java Publications:
http://www.ibm.com/ims
Use a TCP/IP packet logger to analyze the network traffic between your client machine
and IMS Connect.
Use the trace analysis features of IMS Connect Extensions (see Chapter 11, “IMS
Connect Extensions” on page 155 for details).
If you decide to report the error to IBM, you need to provide the following material:
IMS Connect recorder trace log
IMS Connector for Java and J2EE Connector architecture (J2C) trace logs if applicable
To enable the IMS Connector for Java and J2C trace logs, perform the following steps:
If you are running your application under the development environment (for example,
WebSphere Application Developer Studio Integration Edition), you must open the Server
perspective and double-click your test environment server to open the configuration page.
Then, select the
Trace notebook. Ensure that the Enable trace check box is selected
and add the following string to the Trace String:
com.ibm.connector2.ims.*=all=enabled:com.ibm.ejs.j2c.*=all=enabled
The first part of the string enables tracing in the IMS Connector for Java classes, while the
second part enables tracing in the J2C classes. This string can be
added to or replace the
existing Trace String.

Get IMS Connectivity in an On Demand Environment: A Practical Guide to IMS Connectivity now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.