sql >> データベース >  >> RDS >> Oracle

hibernate.jdbc.fetch_sizeまたは@QueryHints(@ javax.persistence.QueryHint(name =org.hibernate.fetchSize、value =10))が機能しない

    Oracleのデフォルトのフェッチサイズ はすでに10レコードなので、このヒントを追加するときにメモリ不足の問題が発生しているのは奇妙です。特に100000が問題にならない場合。

    問題を特定して解決策を提供するために私が行ういくつかのこと:

    コードのベアボーンテスト

    最小限のオーバーヘッドで、クエリ(おそらくDAO)を担当するコードをテストします。メモリ不足の例外は、実際のクエリ+フェッチサイズではなく、データベースの結果の処理が原因である可能性が高いと思われます。

    そのため、コードを一時的に変更して、クエリを実行するだけで、マッピングやその他の処理は行わないようにします。完了したことを確認してください。

    これで問題が「修正」されたと思われる場合は、受信したデータに対して何らかの実行が行われ、メモリが溢れている可能性があります。

    依存関係を更新する

    Maven(またはgradle、またはその他のビルドツール)を使用している場合は、少なくとも最新のマイナーバージョン(たとえば、1.2.3-> 1.2.9)に更新を更新することをお勧めします。これにより、何も壊れないはずですが、いくつかのバグを修正します。

    フェッチサイズをランダムにしないでください

    これらの答え 状況に適したフェッチサイズを決定します。




    1. JPAでデータベースを作成しますか?

    2. pip経由でmysqlclientをインストールする際の問題

    3. EntityFramework6トランザクションのロールバック

    4. mysql、utf-8列:大文字と小文字のみを選択する方法は?