Socket read threads are increasing in OC4J 10.1.3.x (Doc ID 1344801.1)

Last updated on NOVEMBER 05, 2016

Applies to:

Oracle Containers for J2EE - Version 10.1.3.1.0 to 10.1.3.5.0 [Release AS10gR3]
Information in this document applies to any platform.
***Checked for relevance on 22-Jan-2016***

Symptoms


=== ODM Issue Clarification ===

On : 10.1.3.5.0 version, OC4J Install, Config, Deployment and Run-Time

ACTUAL BEHAVIOR
---------------
The number of below thread is increasing so that the thread pool would be full in a few days.

"RMICallHandler-6975" prio=3 tid=0x0000000104aa0400 nid=0x1f14 runnable [0xfffffffb3a91e000..0xfffffffb3a91f928]
at sun.nio.ch.FileDispatcher.read0(Native Method)
at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:21)
at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:233)
at sun.nio.ch.IOUtil.read(IOUtil.java:206)
at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:207)
- locked <0xfffffffc71fa6af8> (a java.lang.Object)
at sun.nio.ch.SocketAdaptor$SocketInputStream.read(SocketAdaptor.java:176)
- locked <0xfffffffc71fa6ad0> (a java.lang.Object)
at sun.nio.ch.ChannelInputStream.read(ChannelInputStream.java:86)
- locked <0xfffffffc71fa6808> (a sun.nio.ch.SocketAdaptor$SocketInputStream)
at com.evermind.server.http.EvermindHttpServletRequest.init(EvermindHttpServletRequest.java:450)
at com.evermind.server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:212)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:127)
at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:116)
at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)
at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:234)
at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:29)
at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:879)
at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
at java.lang.Thread.run(Thread.java:595)

EXPECTED BEHAVIOR
-----------------------
Socket connection should be closed with TCP connection termination process.

STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. java -jar oc4j.jar
2. telnet localhost 8888
3. The request threads remains forever if connections are not terminated.
 If RST/FIN packets are lost in the communication channel, the problem will be reproduced.

BUSINESS IMPACT
-----------------------
The issue has the following business impact:
Due to this issue, thread pool would be full in a few days so that the OC4J is restarted automatically during the service.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms