You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Kathey Marsden (JIRA)" <ji...@apache.org> on 2008/05/30 00:53:45 UTC

[jira] Commented: (DERBY-3698) Bulk SQL INSERT, SELECT, UPDATE operations creates OutOfMemoryError after first Cleanup action on serverside

    [ https://issues.apache.org/jira/browse/DERBY-3698?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12600952#action_12600952 ] 

Kathey Marsden commented on DERBY-3698:
---------------------------------------

You might try a periodic commit to reduce memory usage.


> Bulk SQL INSERT, SELECT, UPDATE operations creates OutOfMemoryError after first Cleanup action on serverside
> ------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-3698
>                 URL: https://issues.apache.org/jira/browse/DERBY-3698
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Server
>    Affects Versions: 10.4.1.3
>         Environment: Windows XP, JDK 1.4
>            Reporter: Semih ARAL
>
> In the migration of an DB, 
> By using JDBC (connection is open one time in the begining)
> after many INSERT, SELECT,UPDATE statement executions (more than 3500)
> I got the following Exception on the client side:
> SELECT PK_SEQ, NAME, URL FROM EUPROJ.FIRM WHERE NAME ='INSTITUTE OF EDUCATION University OF LONDON'
> com.javaDevHome.ladyBeetle.exception.MicroJDBCException: java.sql.SQLException: DERBY SQL error: SQLCODE: -1, SQLSTATE: XJ001, SQLERRMC: java.lang.OutOfMemoryErrorXJ001.U
> 	at com.javaDevHome.ladyBeetle.MicroJDBCConnection.executeQuery(MicroJDBCConnection.java:251)
> 	at com.javaDevHome.ladyBeetle.MicroJDBCDBase.selectRowSilent(MicroJDBCDBase.java:133)
> 	at euProj.transfer.Transfer.procFirmNew(Transfer.java:259)
> 	at euProj.transfer.Transfer.procshortListNew(Transfer.java:200)
> 	at euProj.transfer.Transfer.readConsortiums(Transfer.java:524)
> 	at euProj.transfer.Transfer.procContract(Transfer.java:107)
> 	at euProj.transfer.Transfer.readLine(Transfer.java:554)
> 	at euProj.transfer.Transfer.main(Transfer.java:594)
> Caused by: java.sql.SQLException: DERBY SQL error: SQLCODE: -1, SQLSTATE: XJ001, SQLERRMC: java.lang.OutOfMemoryErrorXJ001.U
> 	at org.apache.derby.client.am.SQLExceptionFactory40.getSQLException(Unknown Source)
> 	at org.apache.derby.client.am.SqlException.getSQLException(Unknown Source)
> 	at org.apache.derby.client.am.Statement.executeQuery(Unknown Source)
> 	at com.javaDevHome.ladyBeetle.MicroJDBCConnection.executeQuery(MicroJDBCConnection.java:247)
> 	... 7 more
> Caused by: org.apache.derby.client.am.SqlException: DERBY SQL error: SQLCODE: -1, SQLSTATE: XJ001, SQLERRMC: java.lang.OutOfMemoryErrorXJ001.U
> 	at org.apache.derby.client.am.Statement.completeSqlca(Unknown Source)
> 	at org.apache.derby.client.net.NetStatementReply.parsePrepareError(Unknown Source)
> 	at org.apache.derby.client.net.NetStatementReply.parsePRPSQLSTTreply(Unknown Source)
> 	at org.apache.derby.client.net.NetStatementReply.readPrepareDescribeOutput(Unknown Source)
> 	at org.apache.derby.client.net.StatementReply.readPrepareDescribeOutput(Unknown Source)
> 	at org.apache.derby.client.net.NetStatement.readPrepareDescribeOutput_(Unknown Source)
> 	at org.apache.derby.client.am.Statement.readPrepareDescribeOutput(Unknown Source)
> 	at org.apache.derby.client.am.Statement.flowExecute(Unknown Source)
> 	at org.apache.derby.client.am.Statement.executeQueryX(Unknown Source)
> 	... 9 more
> in derby.log on the server side :
> 2008-05-29 20:33:04.578 GMT Thread[DRDAConnThread_5,5,main] (XID = 171959), (SESSIONID = 4), (DATABASE = euProj03), (DRDAID = NF000001.H1CF-4339779978832484505{5}), Begin compiling prepared statement: SELECT PK_SEQ, NAME, URL FROM EUPROJ.FIRM WHERE NAME ='INSTITUTE OF EDUCATION University OF LONDON' :End prepared statement
> 2008-05-29 20:33:04.609 GMT Thread[DRDAConnThread_5,5,main] (XID = 171959), (SESSIONID = 4), (DATABASE = euProj03), (DRDAID = NF000001.H1CF-4339779978832484505{5}), End compiling prepared statement: SELECT PK_SEQ, NAME, URL FROM EUPROJ.FIRM WHERE NAME ='INSTITUTE OF EDUCATION University OF LONDON' :End prepared statement
> 2008-05-29 20:33:07.499 GMT Thread[DRDAConnThread_5,5,main] (XID = 171959), (SESSIONID = 4), (DATABASE = euProj03), (DRDAID = NF000001.H1CF-4339779978832484505{5}), Cleanup action starting
> 2008-05-29 20:33:07.499 GMT Thread[DRDAConnThread_5,5,main] (XID = 171959), (SESSIONID = 4), (DATABASE = euProj03), (DRDAID = NF000001.H1CF-4339779978832484505{5}), Failed Statement is: SELECT PK_SEQ, NAME, URL FROM EUPROJ.FIRM WHERE NAME ='INSTITUTE OF EDUCATION University OF LONDON'
> java.lang.OutOfMemoryError
> Cleanup action completed
> 2008-05-29 20:33:37.359 GMT Thread[DRDAConnThread_6,5,main] (XID = 169430), (SESSIONID = 6), (DATABASE = euProj03), (DRDAID = NF000001.H1D1-4255618960795994455{7}), Rolling back
> 2008-05-29 20:33:37.359 GMT Thread[DRDAConnThread_6,5,main] (XID = 169430), (SESSIONID = 6), (DATABASE = euProj03), (DRDAID = NF000001.H1D1-4255618960795994455{7}), Rolling back
> 2008-05-29 20:33:37.359 GMT Thread[DRDAConnThread_4,5,main] (XID = 143043), (SESSIONID = 5), (DATABASE = euProj03), (DRDAID = NF000001.H1D0-4255900435772705908{6}), Rolling back
> 2008-05-29 20:33:37.359 GMT Thread[DRDAConnThread_4,5,main] (XID = 143043), (SESSIONID = 5), (DATABASE = euProj03), (DRDAID = NF000001.H1D0-4255900435772705908{6}), Rolling back
> in the derby.log there is no other Cleanup action, this is the first and the only one.
> I have started the server by default heap memory options:
> java -Dderby.system.home=C:\derby -jar %DERBY_HOME%\lib\derbyrun.jar server start

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.