JDBCアプリケーションを長時間無操作のあとに再アクセスすると発生する「java.lang.OutOfMemoryError SQLState=<8001>,Code=<0>」エラーの対処について
- JDBCアプリケーションを長時間操作せずにそのままにしたあと、再度データベースにアクセスしたら"java.lang.OutOfMemoryError SQLState=<8001>,Code=<0>"というエラーが発生しました。
対処方法を教えてください。 - 以下の3点を確認してください。
-
JDBCドライバでタイムアウトが発生した可能性があります。JDBCの接続情報に“options”引数の“tcptimer”オプションを指定して、 アプリケーションを再度実行してください。“tcptimer”オプションに“0”を指定した場合は、待ち時間の監視を行いません。
【記述例(時間監視なしの場合)】
jdbc:symforda://<host>:<port>/<db_env>;tcptimer=0【注意】
JDBCデータソースを使用している場合は、オプション情報設定画面でサーバ待ち時間の値を変更してください。 -
RDA-SVの入力待ち時間監視機能により、コネクションが切断された可能性があります。RDA-SVの入力待ち時間監視の値を見直し、適当な値を設定してください。
-
Symfoware Serverまたは、RDA-SVが正しく動作しているかを再度確認してください。
-
製品・サービス区分 | Symfoware | ||||
---|---|---|---|---|---|
製品・サービス情報 |
|
||||
アンサー種別 | 運用/保守 |