[pgpool-general-jp: 379] Re: pgpool-II 2.0.1 : difference of the number of update tuples

Yoshiyuki Asaba y-asaba @ sraoss.co.jp
2008年 2月 18日 (月) 10:54:03 JST


浅羽です。

From: Jun Kuriyama <kuriyama+ml @ s2factory.co.jp>
Subject: [pgpool-general-jp: 378] pgpool-II 2.0.1 : difference of the number of update tuples
Date: Sat, 16 Feb 2008 10:54:07 +0900

>  最近二回ほど、pgpool プロセスが刺さってしまう状況になりました。プロ
> セス自体は存在するのですが、telnet localhost 9999 してもつなげない状態
> です。
(省略)
> 
>  まだ原因や引き金などはわかっていないのですが、次に発生した時に何かわ
> かるかなと思い -d オプションをつけて起動して運用しているところです。
> 
> # これはこれで、もし「こういうことを試してみたらどうか」というのがあれ
> # ば教えてください。

pgpool 子プロセスが何らかの理由ですべてハングアップしているようなので、
ps の結果をいただけないでしょうか?また、gdb でスタックトレースを取得
していただけると幸いです。


> > - Abort a transaction if INSERT, UPDATE and DELETE reports
> >   different number of result rows(Yoshiyuki)
> >
> >   x=# update t set a = a + 1;
> >   ERROR:  pgpool detected difference of the number of update tuples
> >   HINT:  check data consistency between master and other db node
> 
> にひっかかってしまう状態になりました。これもデータベース領域を同期させ
> て再起動することで問題なく動いています。
> 
>  ここで要望なのですが、手動での同期前の状態では、上記の difference of
> the number of update tuples は、おそらく整合性が崩れている状態かと思い
> ますので、同じ UPDATE 文を引き続き投げても同じ結果となります。
>  実用上このままだと DB が機能しない状態なので、
> 
>  A) transaction abort ではなく、縮退運転に入る
>  B) もしくはデフォルトでは既存の挙動で、オプションで A) のような動作と
>     する
> 
> ような形になっているといいかな、と思いました。

恐らく B) の方法を選択することになると思いますが、色々と検討させてくだ
さい。

よろしくお願いします。
--
Yoshiyuki Asaba
y-asaba @ sraoss.co.jp


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