You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tomcat.apache.org by "LEBLANC, Damiens" <Da...@neufcegetel.fr> on 2006/09/08 17:22:31 UTC

pools of connections Tomcat 5.5 and Oracle 8i - Connection interrupted

Hi,

 

 

Issue

--------

I have installed a pool of connections in Tomcat 5.5 so that

the intranet of my society can connect to the database Oracle 8i.  

When Tomcat is starting, the pool is correctly load ant the connections are

used. With more than 100 users, there are no connections to the database : 

the JAVA servlets log each time ""Connection interrupted" and "Connection is closed".

The first error seams to come from a "long" Oracle request (type "select * where...")

on a table including a CLOB and having 15 000 records.

 

How can I correct this issue ? 

 

Volumetry

----------

5000 collaborators work for the society and can connect to the intranet.

We have on average 3000 connections by day.

 

 

System Architecture : 

--------------------

- 2 servers SUN/Solaris 8 with 8 Giga RAM and a DNS round robin.

- On each server : Apache 1.3.33, Tomcat 5.5, mod-jk 1.2.10, 

  Servlets JAVA+JSP, JDBC, JDK 1.4.2

- Each JVM have 3 Giga configured with

 "-Xms3000m -Xmx3000m -XX:NewRatio=2 -XX:+UseParallelGC"

- 1 server SUN for the database Oracle 8i. 

  

 

server.xml:

-----------

 

Server port="9005" shutdown="SHUTDOWN">

 

<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"

        debug="0"/>

    <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"

        debug="0"/>

 

 

  <GlobalNamingResources>

    <!-- Used by Manager webapp -->

    <Resource name="UserDatabase" auth="Container"

              type="org.apache.catalina.UserDatabase"

       description="User database that can be updated and saved"

           factory="org.apache.catalina.users.MemoryUserDatabaseFactory"

          pathname="conf/tomcat-users.xml" />

  </GlobalNamingResources>

 

 

   <!-- Service name="Tomcat-Standalone"-->

    <Service name="Catalina">

        <Connector port="9080"

            className="org.apache.coyote.tomcat5.CoyoteConnector"

            minProcessors="5" maxProcessors="75"

            enableLookups="true" redirectPort="8443"

            acceptCount="100" debug="0" connectionTimeout="20000"

            useURIValidationHack="false" disableUploadTimeout="true" />

 

        <!-- Define a Coyote/JK2 AJP 1.3 Connector on port 8009 -->

        <Connector className="org.apache.coyote.tomcat5.CoyoteConnector"

            port="8002" minProcessors="5" maxProcessors="75"

            enableLookups="true" redirectPort="8443"

            acceptCount="10" debug="0" connectionTimeout="0"

            useURIValidationHack="false" protocol="AJP/1.3" address="10.92.41.189"         tomcatAuthentication="false"

            protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"

            />

 

        <Engine name="Catalina" defaultHost="localhost" debug="0">

 

            <!-- This Realm uses the UserDatabase configured in the global JNDI

            resources under the key "UserDatabase".  Any edits

            that are performed against this UserDatabase are immediately

            available for use by the Realm.  -->

            <Realm className="org.apache.catalina.realm.UserDatabaseRealm"

                debug="0" resourceName="UserDatabase"/>

 

            <Host name="localhost" debug="0" appBase="/appli/tomcat/tomcat1/tomcat_dist/webapps" unpackWARs="true" autoDeploy="false">

 

                <Valve className="org.apache.catalina.valves.AccessLogValve"

                    directory="/appli/tomcat/log"  prefix="intragroupe_accesslog." suffix=".txt"

                    pattern="common"/>

 

 

                <Context path="" docBase="ROOT" debug="0"/>

                <Context path="/intragroupe" docBase="intragroupe" debug="1"

                    reloadable="false" crossContext="true"

                       allowLinking="true" >

 

                <Resource name="jdbc/dsBdIntranet" auth="Container"

                 type="javax.sql.DataSource"

                 maxActive="175"

                 maxIdle="88"

                 maxWait="15000"

                 removeAbandonedTimeout="180"

                 removeAbandoned="true"

                 logAbandoned="true"

                 username="bdintranet"

                 password="bdintranet"

                 factory="org.apache.commons.dbcp.BasicDataSourceFactory"

                 driverClassName="oracle.jdbc.driver.OracleDriver"

                 url="jdbc:oracle:thin:@nr0u0097:1532:ENFP01P0"

                 />

 

                 <Resource name="jdbc/dsBdTsol" auth="Container"

                 type="javax.sql.DataSource"

                 maxActive="105"

                 maxIdle="52"

                 maxWait="15000"

                 removeAbandonedTimeout="180"

                 removeAbandoned="true"

                 logAbandoned="true"

                 username="bdtsol"

                 password="bdtsol"

                 factory="org.apache.commons.dbcp.BasicDataSourceFactory"

                 driverClassName="oracle.jdbc.driver.OracleDriver"

                 url="jdbc:oracle:thin:@nr0u0097:1532:ENFP01P0"

                 />

 

 

                </Context>

 

            </Host>

 

        </Engine>

 

    </Service>

 

 

</Server>

 

I can give you more informations,

Thanks in advance,

 

Damiens LEBLANC
DSI Collaborateurs - Responsable Intranet et Satisfaction utilisateur 

Tél.: 01 70 18 46 85
neuf cegetel
40 - 42 Quai du Point du Jour - 92659 Boulogne Billancourt

www.groupeneufcegetel.fr <http://www.groupeneufcegetel.fr/>