Ok, I think I understand now. Here's what I've found. When I run the following
code ...
--------------------------------------
PersistenceBroker pb = ... <--- get a broker but don't close
Properties p =
((PersistenceBrokerFactoryDefaultImpl)PersistenceBrokerFactoryFactory.instance()).getPoolConfiguration();
Iterator i = p.keySet().iterator();
while (i.hasNext())
{
String key = i.next().toString();
System.out.println(key + ": " + p.getProperty(key));
}
System.out.println("Active connections: " +
PersistenceBrokerFactoryFactory.instance().activePersistenceBroker());
Thread.sleep(60000);
System.out.println("Active connections: " +
PersistenceBrokerFactoryFactory.instance().activePersistenceBroker());
--------------------------------------
...I see some configuration options that I don't know how to set (marked with a
-). These aren't in my OJB.properties file and adding them didn't seem to work.
+ whenExhaustedAction: 1
+ maxIdle: -1
+ maxActive: 100
+ maxWait: 20000
- removeAbandoned: false
- numTestsPerEvictionRun: 10
- testWhileIdle: false
+ minEvictableIdleTimeMillis: 10000
- testOnReturn: false
- logAbandoned: false
- removeAbandonedTimeout: 300
+ timeBetweenEvictionRunsMillis: 5000
- testOnBorrow: false
Active connections: 1
Active connections: 1
Also, based on the configuration, I would expect the connection to be shutdown
after my 60 second Thread.sleep, but as you can see, the connection is still
listed as active. Am I looking in the right place?
-----Original Message-----
From: Armin Waibel [mailto:[EMAIL PROTECTED]
Sent: Thursday, February 10, 2005 1:45 PM
To: OJB Users List
Subject: Re: Pool Info?
Hi Bob,
Bob Damato wrote:
> Hello Armin, Thank you for the information. I extended the
> ConnectionFactoryPooledImpl and I was able to gain access to the connection
> pool information.
>
> Another question: Is there a way that I can set up the pool to notify me
> (log entry, email, electric shock etc) if a broker is evicted from the pool?
>
you have to differ between the connection-pool and the PB pool. The
PB-pool was setup in PersistenceBrokerFactoryDefaultImpl.
Think commons-pool does not provide any Listener to get notification of
pooling actions.
I think you can ask for the number of active PB directly in OJB doing
int active =
PersistenceBrokerFactoryFactory.instance().activePersistenceBroker()
If you need more detailed control have a look in
PersistenceBrokerFactoryDefaultImpl and extend it if possible.
I will try to implement some basic monitor methods for connection/PB
pool in OJB 1.1 - suggestions are welcome.
regards,
Armin
>
> -----Original Message-----
> From: Armin Waibel [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, February 09, 2005 4:07 PM
> To: OJB Users List
> Subject: Re: Pool Info?
>
>
> Hi Bob,
>
> currently there are no methods to access the used commons-pool instances
> in ConnectionFactoryPooledImpl. I recommend to extend
> ConnectionFactoryPooledImpl and override method #createConnectionPool.
>
> public ObjectPool createConnectionPool(JdbcConnectionDescriptor jcd)
> {
> ObjectPool pool = super.createConnectionPool...
> // add 'pool' instance to list or map, ObjectPool has methods to
> // lookup active connections, idle connections ...
> return pool;
> }
>
> regards,
> Armin
>
> Bob Damato wrote:
>
>>I'm using ConnectionFactoryPooledImpl and I'm trying to find run time
>>information about the pool such as the current number of connections "checked
>>out", and the number of connections that were timed out etc. Is there any way
>>to get this data?
>>
>>
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]