[jacorb-developer] what orb property to change to avoid server running out of threads?

David Rodenbaugh David.Rodenbaugh at digitalglobe.com
Wed May 27 01:43:11 CEST 2015


I am getting the error below after I upgraded from jacorb 2.3.0 to any of 3.0, 3.5, and 3.6.1.  A server process throws this error after a transient client command is invoked around 500 times in quick succession.  The client sends a message to the server and the server sends a response.  The client exits after sending a message to acknowledge the response.  I think the server is leaking the threads that handles the message from the client.  My orb properties are set the same as in 2.3.0 where this works, but I'm guessing I need to tweak a property for the newer versions of jacorb where I'm having the thread leakage issue.  I experimented with setting jacorb.connection.delay_close=off, and that worked longer, but still failed after 999 command invocations.  Any other suggestions for properties to tweak to get around this issue?


org.omg.CORBA.NO_RESOURCES: (Pool)[0/1000] no idle threads but maximum number of threads reached (1000)

        at org.jacorb.util.threadpool.ThreadPool.putJob(ThreadPool.java:183)

        at org.jacorb.orb.giop.MessageReceptorPool.connectionCreated(MessageReceptorPool.java:86)

        at org.jacorb.orb.giop.ClientConnectionManager.getConnection(ClientConnectionManager.java:135)

        at org.jacorb.orb.Delegate.bind(Delegate.java:496)

        at org.jacorb.orb.Delegate.getObjectKey(Delegate.java:1029)

        at org.jacorb.orb.ORB.findPOA(ORB.java:569)

        at org.jacorb.orb.Delegate.resolvePOA(Delegate.java:1064)

        at org.jacorb.orb.Delegate.is_really_local(Delegate.java:1951)

        at org.jacorb.orb.Delegate.is_a(Delegate.java:1779)

        at org.omg.CORBA.portable.ObjectImpl._is_a(ObjectImpl.java:53)

        at CommonCommunications.PortHelper.narrow(PortHelper.java:59)

        at com.raytheon.crss.core.ipc.portprotocol.MessageCourier.deliver(MessageCourier.java:584)

        at com.raytheon.crss.core.ipc.portprotocol.MessageCourier.access$000(MessageCourier.java:50)

        at com.raytheon.crss.core.ipc.portprotocol.MessageCourier$1.run(MessageCourier.java:506)

        at java.lang.Thread.run(Thread.java:619)


David

This electronic communication and any attachments may contain confidential and proprietary information of DigitalGlobe, Inc. If you are not the intended recipient, or an agent or employee responsible for delivering this communication to the intended recipient, or if you have received this communication in error, please do not print, copy, retransmit, disseminate or otherwise use the information. Please indicate to the sender that you have received this communication in error, and delete the copy you received.

DigitalGlobe reserves the right to monitor any electronic communication sent or received by its employees, agents or representatives.


More information about the jacorb-developer mailing list