[pgpool-general-jp: 222] Re: 大量のINSERTを行うとデッドロックする

Yoshiyuki Asaba y-asaba @ sraoss.co.jp
2007年 7月 24日 (火) 17:44:59 JST


浅羽です。

From: "igarashi @ motion.co.jp" <igarashi @ motion.co.jp>
Subject: [pgpool-general-jp: 220] Re: 大量のINSERTを行うとデッドロックする
Date: Tue, 24 Jul 2007 15:02:49 +0900

> 3.sqlに
> begin;
> lock lock_test in row exclusive mode;
> insert into lock_test values(20001,'C');
> commit;
> (20001〜30000までの1万件)
> 
> 4.sqlに
> begin;
> lock lock_test in row exclusive mode;
> insert into lock_test values(30001,'D');
> commit;
> (30001〜40000までの1万件)
> を記述し、
> 1つ目のセッションからpsql -f 3.sql DBNAME
> 2つ目のセッションからpsql -f 4.sql DBNAME
> を実行した時に、上記のログが出力されました。

ご報告ありがとうございます。
insert_lock を設定し、pgpool が内部的に LOCK TABLE を実行した際にデッ
ドロックが発生すると、kind mismatch が発生していました。

CVS には修正しましたので、再度お手数おかけしますがチェックアウトしてい
ただいて、ご確認いただけないでしょうか?

なお、pgpool.conf に replicate_select = true を設定していただくことで、
ロードバランスされない SELECT はレプリケーションするように修正しました。

こちらは 8/1 リリース予定です。
よろしくお願いします。
--
Yoshiyuki Asaba
y-asaba @ sraoss.co.jp


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