Re: Memory shooting up when using Oracle JDBC drivers



zunilp@xxxxxxxxx wrote:
Hi,
I have a JDBC program connecting to Oracle 9i Database using
connection pool. What we observed is, when we continously send queries
and Insert request, the memory is increasing continously and
stabilises after some 100 run.
The scenario is like this.
1. We prepare the query
2. execute it
3. Cache the prepared query
4. Close resultset

This is same for insert and read.

But for 10 connections in the pool nad cache size of query 50, the
memory stabiliases around 110MB.

We tested the same scenario(same tables, same connections, same data)
with MySQL and SQLServer using JDBC drivers. The memory is not
increasing.

We checked the memory using JProbe. What we found is
1. 64% of the memory is consumed by byte[] allocated inside Oracle
JDBC driver.(Exactly , it is allocated by
oracle.jdbc.dbaccess.DBItem.clone())
2. 27% of the memory is consumed by Objects of class TTCItem of Oracle
driver.

What exactly do you mean by item 3 above? Do you store the PreparedStatement with the Connection?

robert


.



Relevant Pages

  • Re: Oracle JDBC connection class (10.1 vs 10.2)
    ... Totally different recommendations for sharing connection object ... "The Oracle JDBC drivers provide full support for, ...
    (comp.databases.oracle.misc)
  • Oracle JDBC connection class (10.1 vs 10.2)
    ... We have come across rather puzzling difference in JDBC documentation ... Totally different recommendations for sharing connection object ... Oracle strongly discourages sharing a database connection ...
    (comp.databases.oracle.misc)
  • sending a CLOB to oracle via Websphere problem
    ... I'm attempting to perform two different things with a Websphere 5.1 ... application connecting to an Oracle 9i database via JDBC. ... works is to create our own connection pool, and then create the CLOB via the ... This appears to be a problem between JDBC and Oracle. ...
    (comp.lang.java.databases)
  • Re: Oracle specific jdbc and J2EE application server
    ... We need to use the Oracle specific jdbc features such as mapping an Java object to a Oracle Type and for that reason we need to cast the connection and statements returned from the jndi datasource to Oracle ... Typically these objects come from a pooled JDBC connection, and the application server needs to be able to guarantee that no two threads/users will be operating on a given pooled connection at the same time. ...
    (comp.lang.java.databases)
  • Memory shooting up when using Oracle JDBC drivers
    ... I have a JDBC program connecting to Oracle 9i Database using ... memory stabiliases around 110MB. ... We tested the same scenario(same tables, same connections, same data) ... 64% of the memory is consumed by byteallocated inside Oracle JDBC ...
    (comp.lang.java.databases)