NO_RESOURCES exception caused by reopenning connections in JacORB subsystem
Issue
Detailed observation:
-
Our client CORBA application (that talks to our server-side CORBA application) shuts down
-
jacorb ClientMessageReceptor thread receives a SocketException: connect reset
-
Optimization in jacorb closes connection and reopens another in anticipation that a client will try to connect to the remote host again on the same port. Note that an actual connect is not attempted immediately, rather the thread goes into a wait() state
-
A new instance of the client application is started that most probably binds to some other port.
-
Subsequent connections to new client application instance happen via a new ClientMessageReceptor thread
-
1-5 are repeated each time the client application is recycled, thus leaving behind a waiting thread every time
-
Eventually after around a 1000 recycles cumulatively, jacorb’s thread pool exhausts and we get the NO_RESOURCES exception
Environment
- Red Hat JBoss Enterprise Application Platform
- 5.2.0
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.