[pgsql-jp: 39122] Re: データディレクトリが突然使用できなくなったことを検知する設定について

Yoshiyuki Asaba y-asaba @ sraoss.co.jp
2008年 1月 31日 (木) 12:00:26 JST


浅羽です。

From: 高尾 宏治 <kouji @ netlab.jp>
Subject: [pgsql-jp: 39117] Re: データディレクトリが突然使用できなくなったことを検知する設定について
Date: Wed, 30 Jan 2008 21:40:18 +0900

>   $ psql -Upostgres -d testdb -h localhost -p 5433 -c "BEGIN; SELECT * FROM users; "
>   psql: FATAL:  could not open file "global/pg_database": No such file or directory
>   $ psql -Upostgres -d testdb -h localhost -p 5433 -c "INSERT INTO users VALUES (3, 'test');"  
>   psql: FATAL:  could not open file "global/pg_database": No such file or directory
> 
> SELECTやINSERTが失敗した。
> 
> 次は、この状態でpgpoolを起動し、pgpoolのヘルスチェックでエラーが検知で
> きるかどうか確認した。エラーを検知しなかった。
> 
>   $ sudo pgpool -n
>   2008-01-30 21:30:14 LOG:   pid 2300: pgpool successfully started
>   2008-01-30 21:30:14 LOG:   pid 2300: starting health checking

pgpool のヘルスチェックでは PostgreSQL に接続してスタートアップパケッ
トを送信できるか(= postmaster が生きているか)どうかをチェックするのみ
です。

上記の状態は DB にログインできませんが postmaster が生きているため、
pgpool のヘルスチェックでは異常を検知できません。例えば上記の例以外に
も、片方だけ最大接続数を越えてしまってエラーになった場合は異常と判断し
ないようにしています。

--
Yoshiyuki Asaba
y-asaba @ sraoss.co.jp



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