[pgsql-jp: 40535] トランザクションの結果反映遅延についてご質問
toshihideka4316 @ zenrin.co.jp
toshihideka4316 @ zenrin.co.jp
2010年 11月 17日 (水) 11:40:56 JST
お世話になります、片山です。
トランザクションの結果反映に遅延が生じる場合があるのですが、
どなたか原因、対策等ご存知でしたら教えていただけないでしょうか。
詳細は以下の通りです。
■環境
PostgreSQL ver8.2.14(サーバ、クライアント共に)、ODBC接続(ODBCドライバ ver8.
2.4)、
DeclareFetch=0、クライアントカーソル使用
■トランザクションの結果反映に遅延が生じるパターン
処理前レコードのフィールドの値を「テスト」とすると
1)接続、トランザクション開始
2)Update文を発行してレコードを変更(「テスト」⇒「テスト2」)
3)select文にて大容量のデータを取得した結果「out of memory」となった
4)コミット
5)接続の切断
6)切断直後に別接続でSelect文を発行⇒update、コミットされたが結果レコード
は「テスト」(更新内容が反映されていない)
7)約1分後のSelect文で更新内容が反映された⇒結果レコード「テスト2」⇒トラ
ンザクションの結果が遅延して反映されている
#5)にて接続を切断しない場合、20分後のselect文でもトランザクションの結果が反
映されない
(selectしても結果は「テスト」のまま)
以上お願いいたします。
pgsql-jp メーリングリストの案内