pgpool
pgpool-II

pgpool-IIの起動がうまくいかないとき、pgpool_statusを消してみる

TL;DR

$logdir/pgpool_statusを消して再度起動する。

pgpool-IIの起動がうまくいかない

具体的には起動から5分経たないとpcp_xxxコマンドを受け付けない。
9898が空いていない。
その間、ログには下記が1秒おきに出力され続ける。

LOG:  find_primary_node: checking backend no 0
LOG:  find_primary_node: checking backend no 1

pgpool-general Info Page

上記メーリングリストを漁ったら(というかググったら日っとした)下記のメールを発見

[pgpool-general: 5667] find_primary_node problem

たどってくと下記に添付されたログが合致(ここがググってたどり着いたとこ)

[pgpool-general: 5675] Re: find_primary_node problem

Yes, I enable debug log, and I got:
LOG: find_primary_node: checking backend no 0
LOG: find_primary_node: checking backend no 1
DEBUG: pool_read: read 13 bytes from backend 0
...

で、それに対する回答

[pgpool-general: 5678] Re: find_primary_node problem

なんで?という質問者への回答

[pgpool-general: 5681] Re: find_primary_node problem

No access to backend is logged, instead move to check backend 1.
That means Pgpool-II skipped checking against backend 0 because it thinks node 0 is down.
The only reason for this is node 0 status was marked as down in the status file.