[pgpool-general-jp: 573] Re: 縮退運転時の挙動について

SHIROUZU Hiroaki shirouzu @ ipmsg.org
2009年 7月 6日 (月) 11:45:06 JST


お世話になっております。
白水です。

回答ありがとうございます。

Tatsuo Ishii wrote [2009/07/06 9:23]:
> 当時は確かにそうでしたが、現在のpgpool-IIでは、縮退を起したときには、
> 生きている方のDB へのトランザクションもアボートされるため、CGI側で常に
> リトライするでほとんどの場合問題ないと思います。

なるほど。

確かに、先週実験した時には、commit 直前に secondary を
SIGSTOPし、commit開始後に secondary を SIGKILL するよう
なパターンでしか、再現できませんでした。

> 唯一問題になるのは、あるノードでコミットに成功したが、別のノードで失敗
> した場合。こういうことはめったに起きないと思いますが、もし起きてしまう
> と、すでにコミットしたデータは取り消せないので、リトライすると不都合が
> 起ることもあると思います。
> 
> こういったケースの場合、CGI側でリトライの可否が判断できるように、特定
> のエラーメッセージをpgpool-IIがクライアント側に返すようにすることはで
> きると思います。そうした方が良いですか?

その形にしていただけると、とても助かります。
よろしくお願いします。

P.S
 ちなみに、理想を言わせていただければ(^^;、縮退が成功して
 動作継続できた場合は(ちょうど RAIDの縮退と同じように)、
 通常のDB操作では正常動作しているように見せて、syslog や
 別コマンド等にて異常が確認できるモードがあると良いのでは
 と思います。ただ、実現となると、いろいろ大変だと思います
 ので、単なる希望として聞き流していただければと思います。

-- 
 SHIROUZU Hiroaki
 http://www.ipmsg.org/private/


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