Hi all,

I have sometimes troubles with pooling. One of the most frequent exception is:
An action has failed: Borrow broker from pool failed, using PBKey 
org.apache.ojb.broker.PBKey: jcdAlias=default, user=null, password=null

It seems that I explode the broker pool capacity (altough I close brokers as 
soon as possible). I'm not very familiar with pooling so please don't blame 
me. My poor brain can just understand that there is two different pools: one 
for the OJB brokers and optionally another one for the JDBC connections. 
Okay. But there is a lot of points which are very dark.

1) Configuring the PB pool

The default values in OJB.properties looks very strange for me:
maxIdle=-1
timeBetweenEvictionRunsMillis=-1
If I read the comments, there's no limit and no eviction for idle brokers, so 
it it sounds for me that they can grow indefinitely (even if 
whenExhaustedAction != 2)! Or maybe the maxActive value limits idle brokers 
too?

2) Configuring the JDBC connections pool

a) Regarding to OJB:

Depending on how OJB brokers handles JDBC connections, is there any rules to 
respect when configuring this the pools, e.g. PB pool maxActive > JDBC pool 
maxActive? I guess this is not mandatory since OJB brokers use JDBC 
connection factory (which could not use pooling btw) and close connections 
properly, but i'd like to be sure..

b) <jndi-datasource-name> vs. <connection-pool>:

I use OJB within Tomcat 5.0.x and I have a JNDI DataSource defined in Tomcat 
(DBCP Factory). If I want to use it with OJB, I have to declare it in the 
<jndi-datasource-name> attribute of <jdbc-connection-descriptor>. In this 
case does it mean that OJB don't manage the pool itself and that the 
<connection-pool> declaration will be ignored? Is the 
ConnectionFactoryDBCPImpl mandatory in that case? Apparently it works better 
if I use it (compared to ConnectionFactoryPooledImpl). But if a JNDI 
DataSource - which is not implemented with DBCP - is declared in my 
container, should I stay with the default implementation?

Thanks a lot..

Vinz

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to