Symfoware Serverの「ERROR:80027:Timeout while getting a connection from pool(80027)」エラーについて
- .NETアプリケーションからデータベースへ接続すると、「ERROR:80027:Timeout while getting a connection from pool(80027)」というエラーになりました。原因と対処方法を教えてください。
- [原因]
アプリケーションにてデータベースとの接続を切断していないことが原因で、不要なコネクションが残存し、コネクションプールの最大数を超えた可能性があります。
コネクションプールの最大数を超えて接続を要求すると、利用可能な接続が見つかるまで待ち続けます。利用可能な接続が見つからず、接続時のタイムアウト時間を超過すると、接続要求がタイムアウトのエラーとなります。
[対処方法]
長時間待ち状態のコネクションを確認し、不要なコネクションがあれば切断してください。
また、アプリケーションにデータベースとの接続を切断する処理が漏れている箇所がないか確認し、切断する処理を追加してください。
すでに、データベースとの接続を切断する処理が組み込まれている場合は、接続文字列に指定したコネクションプールの最大数(※)を見直してください。
※MaxPoolSizeキーワードで指定。デフォルトは20です。
接続中のコネクションの確認方法および切断方法の詳細は以下のマニュアルを参照してください。
FUJITSU Software Symfoware Server V12.4.0
運用ガイド
第7章 定期的な運用操作
7.4 アプリケーションの接続状態の監視
第10章 異常時の対処
10.4 アプリケーション異常の対処
接続文字列の詳細は以下のマニュアルを参照してください。
FUJITSU Software Symfoware Server V12.4.0
アプリケーション開発ガイド
第4章 .NET Data Provider
4.3 データベースへの接続
4.3.4 接続文字列
なお、上記以外の製品バージョン/レベルについては、該当するマニュアル箇所を参照してください。
製品・サービス区分 | Symfoware | ||||||
---|---|---|---|---|---|---|---|
製品・サービス情報 |
|
||||||
アンサー種別 | 運用/保守 |