Hello, we are using Tomcat 5.5.9 on differnt servers. On one SMP linux server we have seen 2-3 times a "Pool exhausted" error.
After much searching and analyzing we think that there exists a race condition in DBCP when you set a very low maxWait time in the context.xml. We had a maxWait of 10ms set (yes, it's very low) in the past. When the server was under high load, it consumed all allowed connections toward the database and did finaly return a "pool exhausted" error. We have also instrumented tomcat with JMX and have monitored the DBCP pools (5 sec interval) And we realy have seen that under very high load a lot of DB connections are allocated by the pool. I think the following happens: 1. class requests a connection from the pool 2. DBCP has no available connection in the pool 3. DBCP maxActive is not reached 4. DBCP starts a maxWait timer 5. DBCP trys to create a DB connection 6. The DB connection is not created after maxWait time 7. goto 2. 8. After in Step 3 maxActive is reached then whole create-loop is stoped and the "pool exhausted" is thrown Perhaps the above scenario only occurs under SMP systems... <Resource name="$project.datasourcename" auth="Container" type="javax.sql.DataSource" username="$project.databaseloginname" password="$project.databaseloginpassword" driverClassName="$project.databasedriver" url="$project.databaseurl" maxActive="1000" maxIdle="30" maxWait="500" removeAbandoned="true" removeAbandonedTimeout="7300" logAbandoned="true" validationQuery="select * from dummy" /> Any Ideas if this could be the problem ? Thanks André --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]