現在、OFBiz ベースの ERP の展開に取り組んでいると、次の問題が発生しました。フレームワークのコードの一部が、resultSet.last() を呼び出して、結果セットの合計行を把握しています。Oracle JDBC Driver v11 および v10 を使用して、クライアント メモリ内のすべての行をキャッシュしようとし、十分なヒープ領域がないために JVM をクラッシュさせます。
調査の結果、問題は、Oracle JDBC がキャッシュを使用して、サーバーではなくクライアント側で Scrollable Cursor を実装していることにあるようです。datadirect ドライバーを使用すると、その問題は解決されますが、resultset.last() の呼び出しが完了するまでに時間がかかりすぎるため、アプリケーション サーバーはトランザクションを中止します。
datadirect ドライバーに頼らずに、oracle で jdbc を介してスクロール可能なカーソルを実装する方法はありますか?
特定の結果セットの長さを知る最も速い方法は何ですか??
よろしくお願いします