Re: Serious OutOfMemory issue while reading with mysql-connector-j-5.0.7 ...

Paul Palaszewski <[email protected]> Fri, 24 Aug 2007 18:56:06 +0200
Newsgroups gmane.comp.db.mysql.java
Message-ID <[email protected]>
Hi Robert!

I've tried useCursorFetch=true . According to the documentation that 
also sets useServerPrepStmts=true - which it did. I confirmed that with 
the debugger. Did not help.

You can see the options I've tried in the test class that I attached to 
the original message.

Best regards,
Paul

Robert DiFalco schrieb:
> Have you tried it with:
>
> useServerPrepStmts=true
> useCursorFetch=true
>
> ? 
>
> -----Original Message-----
> From: Paul Palaszewski [mailto:[email protected]] 
> Sent: Thursday, August 23, 2007 2:32 AM
> To: [email protected]
> Subject: Serious OutOfMemory issue while reading with mysql-connector-j-5.0.7 ...
>
> Hi!
>
> Yesterday I was supprised to get an out of memory exception when reading a big table rec by rec without any caching. The program died in stmt.executeQuery(), long before I can do anything with the records.
>
> I've tried different connection options and debugged connector/j ... 
> every time code runs into MysqlIO.readAllResults which can not work, if the table has more records than available in the jvm. More interesting - also server side prepared statements run into that readAll-routine?
>
> Tested with
> connector-j-5.0.3 + 5.0.7,
> mysql db 5.0.41 + some older 5.0 on windows.
>
> C:\Test\src>javac -cp ..\..\lib\jdbc\mysql-connector-java-5.0.7-bin.jar
> MySQLRead.java
> C:\Test\src>java -cp ..\..\lib\jdbc\mysql-connector-java-5.0.7-bin.jar;. 
> MySQLRead
> Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
>         at com.mysql.jdbc.Buffer.getBytes(Buffer.java:198)
>         at com.mysql.jdbc.Buffer.readLenByteArray(Buffer.java:318)
>         at
> com.mysql.jdbc.MysqlIO.extractNativeEncodedColumn(MysqlIO.java:3567)
>         at
> com.mysql.jdbc.MysqlIO.unpackBinaryResultSetRow(MysqlIO.java:3483)
>         at com.mysql.jdbc.MysqlIO.nextRow(MysqlIO.java:1391)
>         at com.mysql.jdbc.MysqlIO.readSingleRowSet(MysqlIO.java:2369)
>         at com.mysql.jdbc.MysqlIO.getResultSet(MysqlIO.java:451)
>         at
> com.mysql.jdbc.MysqlIO.readResultsForQueryOrUpdate(MysqlIO.java:2076)
>         at com.mysql.jdbc.MysqlIO.readAllResults(MysqlIO.java:1451)
>         at
> com.mysql.jdbc.ServerPreparedStatement.serverExecute(ServerPreparedStatement.java:1314)
>         at
> com.mysql.jdbc.ServerPreparedStatement.executeInternal(ServerPreparedStatement.java:740)
>         at
> com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1448)
>         at MySQLRead.main(MySQLRead.java:23)
>
> Regards
> Paul
>
> --
> --
> _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
> _/
> _/   BDM Business Data Management GmbH
> _/
> _/   Firmenbuch: FN 242059w
> _/   Gerichtsstand: Landesgericht Wiener Neustadt  
> _/   UID: ATU57685758
> _/
> _/   Grenzgasse 111, Objekt 9/4
> _/   2340 Mödling
> _/   Tel,Fax: +43 2236 46 393
> _/
> _/   Ing. Paul Palaszewski, (Hons) B.Sc.
> _/   Geschäftsführer
> _/   Mobil: +43(650) 37 36 030
> _/   E-Mail: [email protected]
> _/
> _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
>  
>
>
>
>   


-- 
--
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/
_/   BDM Business Data Management GmbH
_/
_/   Firmenbuch: FN 242059w
_/   Gerichtsstand: Landesgericht Wiener Neustadt  
_/   UID: ATU57685758
_/
_/   Grenzgasse 111, Objekt 9/4
_/   2340 Mödling
_/   Tel,Fax: +43 2236 46 393
_/
_/   Ing. Paul Palaszewski, (Hons) B.Sc.
_/   Geschäftsführer
_/   Mobil: +43(650) 37 36 030
_/   E-Mail: [email protected]
_/
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 


-- 
MySQL Java Mailing List
For list archives: http://lists.mysql.com/java
To unsubscribe:    http://lists.mysql.com/[email protected]