2012-02-14 14 views
0

ibatisを使用しているバネ・バッチの実行中にJavaヒープ・スペース・エラーが発生しました。Javaヒープ・スペース・エラー

以下はスタックトレースです。

 java.lang.OutOfMemoryError: Java heap space 
at oracle.sql.converter.CharacterConverter1Byte.toOracleStringWithReplacement(CharacterConverter1Byte.java:531) 
at oracle.sql.CharacterSetWithConverter.convertWithReplacement(CharacterSetWithConverter.java:200) 
at oracle.jdbc.driver.DBConversion.javaCharsToCHARBytes(DBConversion.java:770) 
at oracle.jdbc.driver.DBConversion.javaCharsToCHARBytes(DBConversion.java:711) 
at oracle.jdbc.driver.T4C8TTIClob.write(T4C8TTIClob.java:384) 
at oracle.jdbc.driver.T4CConnection.putChars(T4CConnection.java:2708) 
at oracle.sql.CLOB.putChars(CLOB.java:408) 
at oracle.jdbc.driver.OracleClobWriter.write(OracleClobWriter.java:111) 
at java.io.Writer.write(Unknown Source) 
at java.io.Writer.write(Unknown Source) 
at org.springframework.util.FileCopyUtils.copy(FileCopyUtils.java:220)  

SQLコンバーターは何をしていますか?

+0

これ以上のメモリが必要な場合があります。ヒープサイズを大きくする( '-Xmx'フラグ)。 –

+0

これを見てくださいhttp://stackoverflow.com/questions/3077154/ways-to-reduce-memory-churn – basav

答えて

0

また、Oracle JDBCを使用している場合は、結果セットにResultSet.TYPE_FORWARD_ONLYを使用していることを確認してください。スクロール可能なResultSetを使用する場合、Oracleは「クライアント側キャッシュ」を使用します。 (http://docs.oracle.com/cd/B10500_01/java.920/a96654/resltset.htm)

関連する問題