NO_RESOURCES exception caused by reopenning connections in JacORB subsystem

Solution Verified - Updated -

Issue

Detailed observation:

  1. Our client CORBA application (that talks to our server-side CORBA application) shuts down

  2. jacorb ClientMessageReceptor thread receives a SocketException: connect reset

  3. 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

  4. A new instance of the client application is started that most probably binds to some other port.

  5. Subsequent connections to new client application instance happen via a new ClientMessageReceptor thread

  6. 1-5 are repeated each time the client application is recycled, thus leaving behind a waiting thread every time

  7. 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 of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.