What we are doing?
We are in the process of migrating from Resin 2.0.3 to Tomcat 7.0.28.
The codebase running on Resin when subjected to a stress test (using
resin's connection pool) with maxactive of 50 perform fine. It meets out
non functionality requirements including hits/sec, throughtput, passed
transactions etc...
We added two new elements in the migration effort - Tomcat 7.0.28 and CAS
3.4.11.

What is the issue?
When we run a stress test on the same codebase deployed to Tomcat 7.0.28,
at about 2hr45min into the test with 530 virtual users logged in (at peak
load), I get a lot of connection pool empty errors. The maxactive attribute
(using tomcat connection pool) has been set to 100.

Other information:
CAS runs on a different server with a dedicated tomcat home and base. I
dont see any errors on this box.
7.0.26 was found to have a bug in the way connection count is determined,
which got fixed in 7.0.28, hence we switched to the latest version.

Here is one of the connection pool config from server.xml. We do a resource
link to this pool in the context.xml

<Resource name="jdbc/global-wl" auth="Container"
        type="javax.sql.DataSource" username="webconnect" password="xxxxxxx"
        driverClassName="oracle.jdbc.driver.OracleDriver"
        url="jdbc:oracle:thin:@&&dbs.ip&&:&&oracle.db.port&&:&&dts.dbname&&"
          factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
        maxActive="100" />

Any help is appreciated. Please let me know if you need more information or
code snippets.

Thanks,

Yasser

Reply via email to