On 3/28/11 2:03 AM, Mark Thomas wrote: > On 28/03/2011 03:44, Phil Steitz wrote: >> borrowObject, returnObject and invalidatObject also call allocate >> within synch blocks. Since clearOldest can be kicked off from >> within any activation of allocate, it seems to me we either need to >> find a different way to get clearOldest activated or move all of the >> allocate activations outside of synch blocks. > I was looking at moving the allocate() calls outside of the syncs. > >> I have not made or >> tested all of these changes, but on first look it seems to me that >> the only impact of doing this would be slight performance impact due >> to some additional allocate activations. > Working on this now. I'll keep on eye on the performance impact via > Tomcat's jdbc-pool tests that compare DBCP and jdbc-pool. Rerunning soak tests now.
One note on the dbcp tests. In some of my tests, I saw significant improvements when I used DBCP PoolingDataSource directly instead of BasicDataSource. This is because of the synchronized call to createDataSource in BDS#getConnection (DBCP-300). If possible, you might try running the Tomcat tests with PoolingDataSource in place of BDS to get a better comparison of the underlying pool performance. Phil > Mark > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > For additional commands, e-mail: dev-h...@commons.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org