[pgcluster: 337] Re: 1.0.7RC2 でのビューのレプリケートについて
mitani
mitani @ sraw.co.jp
2004年 6月 7日 (月) 16:58:27 JST
三谷@広島です.
> 以前にご相談させていただきました、View テーブル内で シー
> ケンスを取得することが1.0.7RC1では問題なくできますが、1.0.7RC2
> ではうまくレプリケートされません。
SELECT文をレプリケーションサーバへの応答対象から無条件で外していました.
1.0.7RC2に以下のパッチをあててみてください.
diff -aruN pgcluster-1.0.7rc2/src/backend/libpq/replicate.c
pgcluster-1.0.7rc2a/src/backend/libpq/replicate.c
--- pgcluster-1.0.7rc2/src/backend/libpq/replicate.c 2004-06-02 18:08:52.0000
00000 +0900
+++ pgcluster-1.0.7rc2a/src/backend/libpq/replicate.c 2004-06-07 14:25:43.0000
00000 +0900
@@ -909,6 +909,8 @@
return STATUS_ERROR;
}
Query_String = NULL;
+ PGR_Need_Notice = true;
+ PGR_Check_Lock.check_lock_conflict = true;
}
return status;
}
diff -aruN pgcluster-1.0.7rc2/src/backend/tcop/postgres.c pgcluster-1.0.7rc2a/sr
c/backend/tcop/postgres.c
--- pgcluster-1.0.7rc2/src/backend/tcop/postgres.c 2004-06-02 17:50:03.00000000
0 +0900
+++ pgcluster-1.0.7rc2a/src/backend/tcop/postgres.c 2004-06-07 14:04:30.00000000
0 +0900
@@ -802,8 +802,17 @@
}
else
{
- PGR_Need_Notice = false;
- PGR_Check_Lock.check_lock_conflict = false;
+ if ((PGR_Is_Replicated_Query ) &&
+ (origCmdType == CMD_SELECT ))
+ {
+ PGR_Need_Notice = true;
+ PGR_Check_Lock.check_lock_conflict = true;
+ }
+ else
+ {
+ PGR_Need_Notice = false;
+ PGR_Check_Lock.check_lock_conflict = false;
+ }
}
}
#endif /* USE_REPLICATION */
=============================
三谷 篤<mitani @ sraw.co.jp>
=============================
pgcluster メーリングリストの案内