[pgpool-general-jp: 122] Re: pgpool3.2+JDBC環境でのreplication_strictの挙動について
Yoshiyuki Asaba
y-asaba @ sraoss.co.jp
2007年 5月 7日 (月) 12:34:21 JST
浅羽です。
From: tutui-t @ sys.tosho.co.jp
Subject: [pgpool-general-jp: 120] pgpool3.2+JDBC環境でのreplication_strictの挙動について
Date: Tue, 01 May 2007 22:42:33 +0900
> pgpool3.2のレプリケーションモードで、
> デッドロックのような現象が発生することがあります。
> パケットを取って調べてみたところ、
> JDBC経由のクエリの場合、
> replication_strictをtrueにしていても、
> pgpoolは、masterからのレスポンスを待たずに
> secondaryにリクエストを投げました。
> これは正しい挙動なのでしょうか?
いえ、通常であれば master から結果が返ってくるまで待ちます。
> 上記構成では、トランザクション開始、テーブルロックの後、
> updateコマンドを一つだけ発行してみました。
> 以下、psqlで実行した場合とJDBC経由の場合の結果について、
> 簡単な流れを記します。
> JDBCの場合は、jspで、
> connection.setAutoCommit(false);
> stmt = connection.createStatement();
> stmt.executeUpdate("UPDATE 〜");
> connection.commit();
> のように実行しています。
> (テーブル名:test_data)
同じような再現プログラムを書いて動かしてみましたが、手元の環境では結果
が返ってきてからセカンダリに送っていました。もしデバッグログが残ってい
ましたらいただけないでしょうか?
また、接続する際に以下のように loglevel を 2 にしていただけますでしょ
うか?JDBC ドライバのデバッグログを取得することができます。
jdbc:postgresql://localhost:9999/testdb?loglevel=2
よろしくお願いします。
--
Yoshiyuki Asaba
y-asaba @ sraoss.co.jp
pgpool-general-jp メーリングリストの案内