https://issues.apache.org/bugzilla/show_bug.cgi?id=56318

            Bug ID: 56318
           Summary: Oracle DB cursors are leaking when using
                    org.apache.tomcat.jdbc.pool.DataSourceFactory
           Product: Tomcat 7
           Version: 7.0.50
          Hardware: PC
            Status: NEW
          Severity: major
          Priority: P2
         Component: Catalina
          Assignee: dev@tomcat.apache.org
          Reporter: b...@mail.ru

I've setup a datasource as

<Resource auth="Container"

url="jdbc:oracle:thin:@dgalimov7:1521:DAN2"
        driverClassName="oracle.jdbc.OracleDriver" 
                factory="org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory"
        name="jdbc/IpbDB"
        username="dgalimov_home_new" password="dgalimov_home_new"
        type="javax.sql.DataSource"
        timeBetweenEvictionRunsMillis="10000"
        maxActive="25" maxIdle="3" minIdle="0"
        maxWait="30000"
                testOnBorrow="true" testOnReturn="true" validationQuery="SELECT
1 FROM DUAL"
     />

However, if I change factory from
org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory to
org.apache.tomcat.jdbc.pool.DataSourceFactory, after a while I'm getting errors
like ORA-01000: maximum open cursors exceeded (although I've set 1000 cursors
limit).

I'm using this query to  get the cursors count:
select max(a.value) as highest_open_cur, p.value as max_open_cur
  from v$sesstat a, v$statname b, v$parameter p
  where a.statistic# = b.statistic# 
  and b.name = 'opened cursors current'
  and p.name= 'open_cursors'
  group by p.value;

I've tried adding defaultAutoCommit="true" when using DataSourceFactory, but it
didn't help.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
For additional commands, e-mail: dev-h...@tomcat.apache.org

Reply via email to