[pgpool-general-jp: 1312] select 文のタイムアウトについて

Kikuchi Yukihiro y-kik @ nifty.com
2014年 10月 28日 (火) 01:19:53 JST


お世話になります。菊池と申します。

WebサーバからDBサーバへ接続する際にpgpool-II-3.0.3を使用しています。
pgpoolはレプリケーションモードで動作しており、2台のDBサーバへ接続していますが
select文を発行した際にDB#2側でのみタイムアウトが発生することがあります。
以前は2か月ごとぐらいだったのが8月後半以降はほぼ一週間に一度発生すようになりま
した。
9月中旬にDBサーバ2台をリブートしたところタイムアウトが10/27まで発生しておりま
せん。

pgpoolのメッセージは以下のものが残っていました。
wait_for_query_response:waiting for backend 1 cpmpleting the query
pool_read_failed(connection timeout)

DB#2には”接続がタイムアウトしました”とログが残っていました。


リブートで状況が改善しているように見えますので、不要なセッションが残ったままに
なっていてリソースが確保できない状態になったのかとも思いますが、
情報がpgpool,postgresのメッセージしかないため判断が付きません。

タイムアウトを解消するためにどの様な方法がありますでしょうか。
また、今度タイムアウトが発生した際に取得すべき情報は何がありますでしょうか。
(各サーバのps -ef、vmstat、メッセージ等でしょうか)

環境は以下の通りです。(一部情報が頂けていないものがあります)

pgpool-II-3.0.3
PostgreSQL-9.0.3
Web,DBサーバーとも低負荷状態

情報が少なくて申し訳けありませんが、よろしくお願い致します。



pgpool-general-jp メーリングリストの案内