Memory leak or client side caching?

From: Kovács Péter <peter(dot)kovacs(at)chemaxon(dot)hu>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: Memory leak or client side caching?
Date: 2006-01-11 13:54:57
Message-ID: 43C50E31.5040104@chemaxon.hu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Hi,

Executing the following code results in an increase of 1GB in memory
usage by the process.

String sql = "SELECT
cd_id,cd_fp1,cd_fp2,cd_fp3,cd_fp4,cd_fp5,cd_fp6,cd_fp7,cd_fp8,cd_fp9,cd_fp10,cd_fp11,cd_fp12,cd_fp13,cd_fp14,cd_fp15,cd_fp16,cd_smiles
FROM editexample1";
PreparedStatement ps = conn.prepareStatement(sql);
try {
ResultSet rs = ps.executeQuery();
try {
while (rs.next()) {
int cdId = rs.getInt(1);
for (int i = 0; i < 16; i++) {
int fp = rs.getInt(i+2);
}
String cdSmiles = rs.getString(18);
}
} finally {
rs.close();
}
} finally {
ps.close();
}

The result set contains 1 250 000 rows.

I am not sure if this is a memory leak or the driver just caches the
result set on the client side. If this is the latter, is there a way to
turn off client side caching? If the former, how should I proceed to
find the problem?

Thank you!

Peter

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Roland Walter 2006-01-11 14:43:36 Re: Memory leak or client side caching?
Previous Message Marc Herbert 2006-01-11 11:41:50 cannot dollar-quote $$?$$ in PreparedStatements