[prev in list] [next in list] [prev in thread] [next in thread] 

List:       jacorb-developer
Subject:    Re: [jacorb-developer] jacorb.poa.thread_pool_max
From:       Phil Mesnier <mesnierp () ociweb ! com>
Date:       2015-07-31 15:42:44
Message-ID: 07F14FAB-AE5D-4C28-9890-2BE1951E14E0 () ociweb ! com
[Download RAW message or body]

Hi Subhash,

The short answer is to follow the recommendation in the warning and set \
jacorb.poa.thread_pool_max to some value greater than 20.

This situation is happening because your server is receiving more than 20 concurrent \
requests. Subsequent requests are queued until a thread is available. If your servant \
code is blocking, that will increase the likelihood of concurrent requests. If your \
servant makes CORBA calls to other objects in the same server, that can lead to \
deadlock if these internal calls are queued. An architectural review can help \
identify such cases and perhaps suggest alternative deployments to avoid nested \
invocations.

You mention transactions. Are you using the CORBA Transaction Service, or are you \
using that word to describe an ordinary request/reply interaction between client and \
server?

-Phil

> On Jul 31, 2015, at 5:01 AM, subhash <subbugupta25@gmail.com> wrote:
> 
> We are getting the "Thread pool exhausted, consider increasing
> jacorb.poa.thread_pool_max (currently: 20)" error message in our CORBA
> server. Server console and main page were up. But due to this continuous
> error message in the log file it is not allowing the transactions to
> process. After restarting the server it allows the transactions to process
> normally.
> 
> Error message :
> 
> WARNING Thread pool exhausted, consider increasing
> jacorb.poa.thread_pool_max (currently: 20)
> WARNING Thread pool exhausted, consider increasing
> jacorb.poa.thread_pool_max (currently: 20)
> WARNING Thread pool exhausted, consider increasing
> jacorb.poa.thread_pool_max (currently: 20)
> 
> ******************************
> orb.properties
> ******************************
> # thread pool configuration for request processing
> jacorb.poa.thread_pool_max 
> jacorb.poa.thread_pool_min=5
> 
> # if set, request processing threads in thePOA
> # will run at this priority. If not set or invalid,
> # MAX_PRIORITY will be used.
> #jacorb.poa.thread_priority>
> # Properties controlling the POA's request queue.  If queue_wait is off,
> # then if there are more than queue_max requests in the queue, the
> # client gets TRANSIENT exceptions for any requests.  If queue_wait is on,
> # then the call blocks at the server side until no more than queue_min
> # requests are left in the queue.  The new request is then delivered as usual.
> jacorb.poa.queue_wait=off
> jacorb.poa.queue_max0
> jacorb.poa.queue_min
> 
> _______________________________________________
> jacorb-developer maillist  -  jacorb-developer@lists.spline.inf.fu-berlin.de
> https://lists.spline.inf.fu-berlin.de/mailman/listinfo/jacorb-developer

--
Phil Mesnier
Principal Software Engineer and Partner,   http://www.ociweb.com
Object Computing, Inc.                     +01.314.579.0066 x225




_______________________________________________
jacorb-developer maillist  -  jacorb-developer@lists.spline.inf.fu-berlin.de
https://lists.spline.inf.fu-berlin.de/mailman/listinfo/jacorb-developer


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic