• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

OutOfMemoryError while executing a Callable Statement

 
Jiggi Piggi
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi guys...please help me solve this error..I tried everything i could but all in vain...

In the code I wrote, first i set up a JDBC connection. Then I read contents of an excel sheet (using JExcel API). Then I call an oracle procedure (using CallableStatement) which has return parameters. This call to procedure is once for each row in the excel. Then I write the out parameters in another excel.

But the program is not able to process more than 150 rows.

here is what i get:

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at oracle.jdbc.driver.T4CCallableStatement.doOall8(T4CCallableStatement.java:138)
at oracle.jdbc.driver.T4CCallableStatement.execute_for_rows(T4CCallableStatement.java:783)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1028)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:2888)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:2960)
at oracle.jdbc.driver.OracleCallableStatement.executeUpdate(OracleCallableStatement.java:4124)



I even increased the heap space. Please help me out. Thanks in advance.

 
ujjwal soni
Ranch Hand
Posts: 403
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi,

Can you post some code please ?

Are you closing your connection, statement and resultset in finally clause ?
 
Jhakda Velu
Ranch Hand
Posts: 167
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi
How big is your input file? Can we call your procedure in one go rather than one by one? If you input file is too big, try reading the necessary contents and closing it. Post code if you are allowed to.

Jhakda
 
Jiggi Piggi
Greenhorn
Posts: 3
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hello guys...thanks for your reply...

I found the mistake....i had put the callable statement's declaration in a loop....just becaust the code was too big, i couldnt find it...


thanks again

 
Jeanne Boyarsky
author & internet detective
Marshal
Posts: 34651
365
Eclipse IDE Java VI Editor
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Thanks for sharing the solution.
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic