データベース・ローダーの問題をトラブルシューティングする場合、この情報を使用してください。
説明: ローダー・プラグインは、バックエンド・データベースと通信できない場合、失敗することがあります。 この障害は、データベース・サーバーまたはネットワーク接続がダウンしている場合に発生することがあります。 後書きローダーは、更新をキューに入れ、データ変更を定期的にローダーにプッシュしようと試みます。ローダーは、LoaderNotAvailableException 例外をスローして、 データベース接続の問題があることを ObjectGrid ランタイムに 通知しなければなりません。
[jcc][t4][10120][10898][3.57.82] Invalid operation: result set is closed.
解決策: デフォルトで、アプリケーション・サーバーは resultSetHoldability カスタム・プロパティーを
値 2 (CLOSE_CURSORS_AT_COMMIT) で構成します。このプロパティーにより、DB2 は
トランザクション境界でその resultSet/カーソルを閉じます。この例外を除去するには、カスタム・プロパティーの値を 1 (HOLD_CURSORS_OVER_COMMIT) に変更してください。
WebSphere Application Server セルの次のパスで、resultSetHoldability カスタム・プロパティーを設定します。
「リソース」 > 「JDBC プロバイダー」 > 「DB2 Universal JDBC Driver Provider」 > 「データ・ソース」 > 「data_source_name」 > 「カスタム・プロパティー」 > 「新規」。この例外が発生する原因は、WebSphere Application Server 内で OpenJPA と DB2 を 実行中に生じるロック競合の問題です。WebSphere Application Server のデフォルトの分離レベルは 反復可能読み取り (RR) で、これは DB2 の長期ロックを獲得します。
解決策:分離レベルを読み取りコミット済みに設定して、ロック競合を減らしてください。WebSphere Application Server セルの次のパスで、 データ・ソースの webSphereDefaultIsolationLevel カスタム・プロパティーを設定し、分離レベルを 2 (TRANSACTION_READ_COMMITTED) に設定します。「リソース」 > 「JDBC プロバイダー」 > 「JDBC_provider」 > 「データ・ソース」 > 「data_source_name」 > 「カスタム・プロパティー」 > 「新規」。webSphereDefaultIsolationLevel カスタム・プロパティーと トランザクション分離レベルの詳細については、データ・アクセスの分離レベル設定の要件を参照してください。
代わりに、preloadPartition プロパティーで指定された区画をアクティブにする コンテナー・サーバーで TargetNotAvailableException 例外が発生します。
BackingMap bm = og.defineMap( "map1" );
bm.setPreloadMode( true );
preloadMode 属性は、次の例に示すように、XML ファイルを使用して設定することもできます。 <backingMap name="map1" preloadMode="true" pluginCollectionRef="map1"
lockStrategy="OPTIMISTIC" />