Re: Memory leak ? - Mailing list pgsql-jdbc
From | Mikko Tiihonen |
---|---|
Subject | Re: Memory leak ? |
Date | |
Msg-id | 4D9C40BA.3080606@nitorcreations.com Whole thread Raw |
In response to | Memory leak ? (Pierre Le Mouëllic <pierre.lemouellic@xgs-france.com>) |
Responses |
Re: Memory leak ?
Re: Memory leak ? |
List | pgsql-jdbc |
On 06/04/11 13:11, Pierre Le Mouëllic wrote: > With this code : > > public class TestJDBC { > > private static Timer timer; > > private static Connection connDB; > private static PreparedStatement sQLStatement; > > public static void main(String[] args) throws SQLException, ClassNotFoundException { > > connexion("jdbc:postgresql://praslin.qual.dc1:5432/G01DPM","postgres8","password"); > > timer = new Timer(); > timer.schedule(new local_task(), 1000L, 1000); > } > > static class local_task extends TimerTask { > > public void run() { > ResultSet rs=null; > try { > sQLStatement.setInt(1, 2602); > rs = sQLStatement.executeQuery(); Missing rs.close(); > sQLStatement.setInt(1, 2604); > rs = sQLStatement.executeQuery(); Missing rs.close(); > sQLStatement.setInt(1, 2605); > rs = sQLStatement.executeQuery(); > } catch (SQLException e) { > } > finally{ > > try { > if(rs!=null) > rs.close(); > } catch (SQLException e) { > } > > rollBack(); > } > } > } > > public static void connexion(String chemin, String user, String password) throws SQLException, ClassNotFoundException > { > Class.forName("org.postgresql.Driver"); > String url = chemin+"?user="+user+"&password="+password; > > // Connexion > connDB = DriverManager.getConnection(url); > connDB.setAutoCommit(false); > initPreparedStatement(); > } > > private static void initPreparedStatement() throws SQLException > { > sQLStatement = connDB.prepareStatement("select f_transite(?,'FPL','225',9,'test','','')"); > } > > public static void rollBack() > { > > try > { > connDB.rollback(); > } > catch(SQLException ex) > { > } > } > } > > In eclipse Helios profiler, Jdbc3ResultSet live instances increase (and never decrease). Same thing with > org.postgresql.core.v3.QueryExecutorImpl$ErrorTrackingResultHandler and org.postgresql.core.v3.QueryExecutorImpl$1 classes. > > f_transite stored procedure make some select, insert and update. If you need more explanation, i can give it to you. > > Java 6 > postgresql-9.0-801.jdbc3.jar > PostgreSQL 8.2.5 on powerpc-apple-darwin8.8.0, compiled by GCC powerpc-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer,Inc. build 5363) > > Is it a memory leak ? Or my java code is wrong ? > > *Pierre LE MOUËLLIC > * > _pierre.lemouellic@xgs-france.com_ <mailto:pierre.lemouellic@xgs-france.com> > __ <mailto:pierre.lemouellic@xgs-france.com>
pgsql-jdbc by date: