- PR -

【Postgres】An I/O error occured while sending to the backend エラーについて

1
投稿者投稿内容
にのみや
会議室デビュー日: 2007/11/29
投稿数: 15
投稿日時: 2007-12-03 17:13
お世話になっております。

JAVAとPostgresのWEBアプリケーションで不定期に以下のエラーが発生します。
”An I/O error occured while sending to the backend”

インターネットで調べていると
あるタイミングで、DBサーバ(Postgres)とWEBサーバの接続を
DBサーバ(Postgres)が切断し、上記のエラーが発生しているようです。

しかし、どの設定ファイルを変更することで、
上記のエラーを解消できるかわかりません。
(そもそも解消できるエラーであるのかもわかりません)

上記のようなエラーが発生したご経験のある方は
どんなことでも結構ですので、情報を提供してもらえませんか?
宜しくお願いします。
はしもと
大ベテラン
会議室デビュー日: 2003/02/05
投稿数: 182
投稿日時: 2007-12-03 18:53
PostgreSQL が切断しているのなら、ちゃんと調べないといけないと
いけないと思いますが、サーバかその間のルータか何かが
無通信の接続をタイマーで切断しているのではないでしょうか。
だったら、切断しない設定にするです。

DB サーバで何とかしたいなら、未確認ですが、
tcp_keepalives_* パラメータを設定して、
Linux なら net.ipv4.tcp_keepalive_* カーネル・パラメータを
設定したりすると解決しないでしょうか。

それもだめなら AP サーバか Web アプリの作りを変えるです。

ところでどんな環境ですか。
にのみや
会議室デビュー日: 2007/11/29
投稿数: 15
投稿日時: 2007-12-03 19:23
早速のご回答ありがとうございます。
本家MLのpgsql-jdbcでも提示されている問題なのですね。
サーバかその間のルータの設定かどうかは担当者も異なり、
現段階では不明です(問い合わせてみます)。

環境はいかとなります。
WEBサーバ(Linux)
 JDK-1.5.0_12
 apache2.0,tomcat5.5

DBサーバ(Linux)
 postgresqlサーバ8.1.9
1

スキルアップ/キャリアアップ(JOB@IT)