[pgcluster: 333] Re: PGClusterの「制限事項」に関しての質問

帖佐 厚 chosa @ timedia.co.jp
2004年 6月 4日 (金) 13:07:55 JST


帖佐と申します。

mitani <mitani @ sraw.co.jp> wrote:
> 三谷@広島です.
> まもなく搭乗開始なので手短ですみません.

はじめまして。お忙しいときにすいません。


> シリアル型のデータ項目を持つテーブルにINSERTを行う場合,BEGIN-COMMIT
> でくくると,クラスタサーバによってはシリアル型のデータがばらばらになる可
> 能性があるということです.

申し訳ありません。まだちゃんと「実行順序が各クラスタDB間で異なる」「シ
リアル型のデータがばらばらになる」という意味がイメージ出来ません(T_T)

例えば、
create table test (a serial primary key, b serial, c timestamp);
とテーブルを用意したとします。
以下のような明示的なトランザクションをもったクエリを複数のクラスタサー
バから投げるとします。

begin;
  insert into test (c) values ('now');
  select currval('test_a_seq');
  select nextval('test_b_seq');
end;

仮にクラスタサーバ 1,2,3が実時間でもこの順番で上記のトランザクションを
開始したとした場合に、どういうことが起きうるのでしょうか?


> ちなみに,1.0.7rc2ではこの制限は解消していますので,シリアル型のデータ項
> 目をお使いであれば,最新版をお使いになることをお薦めします.

そうですねえ、色々改善されているみたいですし、どうせこれから作るものな
のでこれでも良い気がします。問題の説明をお願いするより早そうですし、基
本的にはこちらの方向性で考えてみます。

技術的な興味はあるので、一応質問も書き残しておきますがバージョンアップ
で解決する方向で行きますのでご面倒でしたら無視してください。

ありがとうございました。
-- 
株式会社タイムインターメディア             TIME INTERMEDIA CORPORATION
ITソリューション事業部                         IT Solutions Department
情報機器・医療ソリューション部                 Information Utilities/-
                                            Medical Solutions Division
帖佐 厚                                                  Atsushi Chosa



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