[pgcluster: 414] トランザクション実行速度低下について

Wataru Oguro oguro @ zenrin-datacom.net
2004年 7月 15日 (木) 11:18:26 JST


oguroです。

・RedHatLinux7.3(クラスタサーバ2台、レプリケーションサーバ1台)
・PGCluster1.0.7rc6

上記環境でいろいろとテスト中なのですが、奇妙な症状が出ております。
クラスタサーバ1台に接続し、begin〜rollback|commitの間にパーサエラーを出
させてからinsert等のクエリーを発行すると、エラーが出て実行されないのです
が、その直後にトランザクションを終了(rollback|commit)すると普段より時
間がかかります。
このトランザクションの終了後は、同セッション内での更新系クエリーが非常に
遅くなります。(セッションを終了し、接続しなおすと症状は改善します)
更新系クエリーが遅くなったセッションを使い続けていると(どのタイミングか
ははっきりしていません)、\qでpsqlを抜けてもセッションが残るようになって
しまいます。(さらに、別セッションからもトランザクションを発行できなくな
ります)

具体的な手順は以下の通りです。

 1.DBへ接続
  psql test

 2.トランザクション開始
  #begin;

 3.クエリー発行
  #insert into test values('111');
  INSERT 115542 1

 4.パーサエラーを発生させる
  #ooo;
  ERROR: parser: parse error at or near "ooo" at character 1

 5.再びクエリーを発行
  #insert into test values('112');
  ERROR: current transaction is aborted, queries ignored until end of
transaction block

 6.トランザクション終了
  #rollback;

6.以降の更新系クエリーは全て遅くなります。(3.の手順がなくても同様の
症状になります。)
何が原因なんでしょうか・・・・





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