Error Message: "java.net.SocketTimeoutException: Async operation timed out"

During InfoSphere® MDM configuration or upgrade operations, it is possible to receive timeout exception messages. This can happen due to data caching during server startup or due to resolution of bundle dependencies during upgrades.

Symptoms

Running a wsadmin administrative script that calls an MBean in a network deployment environment results in several connections between InfoSphere MDM server processes, including the deployment manager, the node agent, and the cluster member using Java Management Extensions (JMX) connectors. Some InfoSphere MDM configuration and upgrade scripts can run for longer than the default connection timeout that is specified for the connector that is used. This behavior results in error messages similar to the following example:
ADMN0034E: The service is unable to obtain a valid administrative client to
          connect process "node" from process "dmgr", because of exception:
          com.ibm.websphere.management.exception.ConnectorException:
          java.net.SocketTimeoutException: Async operation timed out

Resolving the problem

Modify the timeout properties for the connectors being used to allow enough time for the processes to complete. There are two types of connectors, and you need to know which connector is timing out in your implementation so that you know which properties to change.
Remote JMX connectors

Remote connectors are used between server processes that reside on different physical machines, such as the connection between the deployment manager and the node agent. The default remote connector is the SOAP connector.

Local JMX connectors

Local connectors are used between server processes that reside on the same physical machine, such as the connection between the node agent and its application servers. The default local connector is the IPC connector.

  1. Determine where the timeout is occurring by reviewing the error message and logs.
  2. Modify the properties in the soap.client.props, ipc.client.props, or sas.client.prop files.
  3. Modify the custom properties for the deployment manager and the node agents where members of your runtime deployment target are running.
For example, to change the timeout properties for the SOAP connector:
  1. Modify the com.ibm.SOAP.requestTimeout property by editing the soap.client.props file that is located in the properties subdirectory of the profile_root directory. Set the value to 1800 seconds or 0 (where 0 implies no timeout).
  2. Change the requestTimeout custom property using the WebSphere Application Server Integrated Solutions Console (admin console):
    1. For servers or cluster members, click Servers > Application servers > server_name > Server Infrastructure > Administration > Administration Services > Additional properties > JMX Connectors > SOAPConnector > Additional Properties > Custom properties. Locate the requestTimeout custom property and modify its value to 2400 seconds.
    2. For the deployment manager, click System administration > Deployment manager > Additional Properties > Administration Services > Additional properties > JMX Connectors > SOAPConnector > Additional Properties > Custom properties. Locate the requestTimeout custom property and modify its value to 2400 seconds.
    3. For the node agents, click System administration > Node agents > node_agent_name > Additional Properties > Administration Services > Additional properties > JMX Connectors > SOAPConnector > Additional Properties > Custom properties. Locate the requestTimeout custom property and modify its value to 2400 seconds.


Last updated: 22 Apr 2016