[pgcluster: 622] Re: トランザクション中にレプリケーションサーバが落ちると、クライアントが固まる

kazunari takahashi kazunari.takahashi @ ctc-g.co.jp
2004年 12月 15日 (水) 12:07:41 JST


三谷様

高橋です.

> 三谷@広島です.
> 沖縄セミナーまでの2週間,無茶をしたせいか,昨日は1日くたばっておりました.

頑張ってください!
体力は回復しましたでしょうか?

> psqlで繋いでSQLを実行した場合はどうですか.
> # 手元の環境では問題なくレプリケーションサーバが切り替わるようですが...

psqlで繋いで、SQLを実行し、トランザクション中にレプリケーションサーバを落とすと、
そのトランザクションはabortされないで、セカンダリのレプリケーションサーバに
引き継がれるということでしょうか?
私の環境ですと、実行したコマンド(この場合だと、test.pl)が終了しないで待ち状態になります.
#エラー処理を入れているつもりなのですが...(exit(0))
当然、データはDBに入りません.
そして、次のセッションからは、
レプリケーションサーバはセカンダリに切り替わり、サービスを継続しています..

再度確認なのですが、各サーバの起動順序は、

マスタレプリケーションサーバ
↓
クラスタサーバ1
↓
クラスタサーバ2
↓
セカンダリレプリケーションサーバ
↓
ロードバランサ1
↓
ロードバランサ2

で問題ないでしょうか?

> autocommitをonにして試して貰えませんでしょうか.

了解です.検証してみます.
ただし、アプリケーションがautocommit=onで作りこまれているので、
実運用時にautocommitをoffにすることは厳しいです.

最後に1つ要望なのですが、
レプリケーションサーバ2台構成の場合、
マスタで使用しているレプリケーションサーバをログなどに出してほしいです.

高橋 一成 <kazunari.takahashi @ ctc-g.co.jp>




pgcluster メーリングリストの案内