ODI 12c Agent Load Balancing: "java.net.SocketTimeoutException: Read timed out" Error Received and Causes the Scenario to be Re-executed Unexpectedly
(Doc ID 2488817.1)
Last updated on APRIL 19, 2021
Applies to:
Oracle Data Integrator - Version 12.2.1.2.0 and laterInformation in this document applies to any platform.
Symptoms
When Oracle Data Integrator (ODI) 12c Agent Load Balancing is configured, and a linked Agent (which is executing a Scenario) is accidentally suspended...
... this causes:
- A "java.net.SocketTimeoutException: Read timed out" error to be signaled in the Primary Agent log file:
[2018-10-03T18:01:32.388+09:00] [odi] [ERROR] [] [oracle.odi.agent] ... [oracle.odi.runtime.AgentName: OracleDIAgent1] [oracle.odi.runtime.ExecPhase: PrepareSession] [oracle.odi.runtime.Command: OdiStartScen] [oracle.odi.runtime.OdiUser: SUPERVISOR] [oracle.odi.runtime.WrepName: <NAME>] [oracle.odi.runtime.ScenarioName: <NAME>] [oracle.odi.runtime.ScenarioVer: 001] [oracle.odi.runtime.EntityGuid: <GUID>] Read timed out[[
java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.socketRead(SocketInputStream.java:116)
at java.net.SocketInputStream.read(SocketInputStream.java:171)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:284)
at java.io.BufferedInputStream.read(BufferedInputStream.java:345)
at java.io.FilterInputStream.read(FilterInputStream.java:133)
at org.apache.commons.httpclient.AutoCloseInputStream.read(AutoCloseInputStream.java:108)
at org.apache.commons.httpclient.HttpMethodBase.getResponseBody(HttpMethodBase.java:740)
at oracle.odi.runtime.agent.invocation.RemoteRuntimeAgentInvoker.invoke(RemoteRuntimeAgentInvoker.java:411)
at oracle.odi.runtime.agent.invocation.support.InternalRemoteRuntimeAgentInvoker.invoke(InternalRemoteRuntimeAgentInvoker.java:162)
at oracle.odi.runtime.agent.invocation.support.InternalRemoteRuntimeAgentInvoker.invokeStartScenario(InternalRemoteRuntimeAgentInvoker.java:274)
at oracle.odi.runtime.agent.processor.impl.StartScenRequestProcessor.delegatePrepareSession(StartScenRequestProcessor.java:727)
at ...
== and ==
- The same Scenario to be re-executed by another linked Agent.
This results in the same Scenario to be unexpectedly executed twice.
- Consider four standalone Agents on a same server, and configure the ODI Agent Load Balancing:
agent1 -- Primary Agent
agent2 -- linked Agent
agent3 -- linked Agent
agent4 -- linked Agent
- Execute a Scenario using "startcmd.cmd OdiStartScen" command against the Primary Agent "agent1".
- The Scenario will be balanced to linked Agent "agent2", and executed by "agent2".
- Suspend the linked Agent "agent2", and observe the "java.net.SocketTimeoutException: Read timed out" message in the "odiagent.log" of Primary Agent "agent1".
- Resume the linked Agent "agent2", and observe that the Scenario execution completes without any error.
- Also observe that the same Scenario is re-executed unexpectedly by another of the linked Agents ("agent3" or "agent4" in this example).
Changes
Cause
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Symptoms |
Changes |
Cause |
Solution |
References |