commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Bennett McElwee" <Bennett.McEl...@telecom.co.nz>
Subject DBCP sample configuration parameters? (pool connections failing)
Date Sun, 01 Jul 2007 22:25:37 GMT
What is a good conservative set of configuration parameters for DBCP?

We are having some problems with a web app using DBCP. It looks as if
the problems are with the connection pool, but it's not easy to find
much discussion of basic or recommended settings for things like abandon
settings, eviction timeouts, etc. If you have any recommendations based
on the information below we would be grateful. I will post a summary if
I get any replies.

General
* The web app is actually a portlet application, running under Vignette
Portal.
* A firewall sits between the DB and app servers, and the firewall
timeout = 60 minutes
* The web app uses Spring 2 for connection management.
* Traffic levels would be around 10-50 queries per second. Most queries
are <100ms, but a few take around 5 seconds.

DBCP
* The web app uses DBCP connecting to Oracle 8i with BasicDataSource
with pool settings given below.
* The connection pool seems unreliable - it works sometimes and not
others.
* When it fails we see either 'socket error' or 'connection already
closed' errors in the logs, at the point where the code goes to grab a
new connection
* Sometimes simply a browser refresh fixes it (for that request)
* It's as if some connections are invalid, or losing connections... like
the connection pool is not being maintained properly
* DBCP Settings:
dbcp.defaultAutoCommit=true 
dbcp.defaultReadOnly=false 
dbcp.initialSize=10 
dbcp.maxActive=50 
dbcp.maxIdle=10 
dbcp.minIdle=5 
dbcp.maxWait=10000 
dbcp.validationQuery=select 1 from dual 
dbcp.testOnBorrow=true 
dbcp.testOnReturn=true 
dbcp.testWhileIdle=true 
dbcp.timeBetweenEvictionRunsMillis=30000 
dbcp.numTestsPerEvictionRun=3 
dbcp.minEvictableIdleTimeMillis=900000 
dbcp.poolPreparedStatements=false 
dbcp.maxOpenPreparedStatements=10 
dbcp.removeAbandoned=true 
dbcp.accessToUnderlyingConnectionAllowed=false 
dbcp.removeAbandonedTimeout=60 
dbcp.logAbandoned=true 

Many thanks in advance.
Bennett.
-- 
Bennett McElwee 

This communication, including any attachments, is confidential. If you are not the intended
recipient, you should not read it - please contact me immediately, destroy it, and do not
copy or use any part of this communication or disclose anything about it. Thank you. Please
note that this communication does not designate an information system for the purposes of
the Electronic Transactions Act 2002.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org


Mime
View raw message