2006.09.25 Monday
pgpool でデッドロック発生?
pgpool でトラぶったのは前に書きましたが, ここのところ連続でデータベース周りでトラブルが発生しております。
つい先日も何か良く分からないけど PostgreSQL が応答を返さない状態に。
調査してみるとデータベースA の特定のテーブルにロックがかかっていて, 接続がどんどんたまるたまる。
SELECT もできないので, どうやら ACCESS EXCLUSIVEモードでロックが取得されている模様。
かなり強いロックモードだから SQL も限られるはずなのですが。
ふーむ。
ps でプロセスを見ていると...んん?こいつか!?
つい先日も何か良く分からないけど PostgreSQL が応答を返さない状態に。
調査してみるとデータベースA の特定のテーブルにロックがかかっていて, 接続がどんどんたまるたまる。
SELECT もできないので, どうやら ACCESS EXCLUSIVEモードでロックが取得されている模様。
かなり強いロックモードだから SQL も限られるはずなのですが。
ふーむ。
ps でプロセスを見ていると...んん?こいつか!?
そこには ALTER TABLE を握ったままの 1日前の postmaster が。
原因は良く分からないので pgpool を一旦落とすと, ロックが開放されたのかあっという間にクエリが流れて終了。
まぁ, その日はそれで直ったのでよしとしたのですが, 今日 pgpool の公式ページの変更履歴を見ていたら非常に気になる記述が。
まさにこの症状にピタリ。
pgpool 2.5.x 使っているからバージョンアップした方がよさそうだなぁ。
ここの症状がどんなものだったのかググってみたのですが, 詳細情報は見つからず。
ソース読む気はないので, 詳しい方一報下さいまし。
原因は良く分からないので pgpool を一旦落とすと, ロックが開放されたのかあっという間にクエリが流れて終了。
まぁ, その日はそれで直ったのでよしとしたのですが, 今日 pgpool の公式ページの変更履歴を見ていたら非常に気になる記述が。
pgpool 3.0.2(2006/05/17)
extend protocolの多数のバグを修正(Yoshiyuki)
テーブルロックなどでデッドロックが発生することがある
error responseが返ってくるとうまくいかない
まさにこの症状にピタリ。
pgpool 2.5.x 使っているからバージョンアップした方がよさそうだなぁ。
ここの症状がどんなものだったのかググってみたのですが, 詳細情報は見つからず。
ソース読む気はないので, 詳しい方一報下さいまし。









Comments