[pgsql-jp: 28882] 行ロック状態が残りはしないかと。。。

Tsuru.E tsuru @ hht.co.jp
2003年 1月 31日 (金) 15:55:01 JST


お世話になります。
つるつると申します。

−環境−
OS:TurboLinux 6.5
Apache:1.3.26
PHP:4.2.2
PostgreSQL:7.2.3
−−−−

現在、PHP+PostgresでWebアプリケーションを作成しているのですが、
「トランザクション」と「ロック」について質問があります。

・大まかに以下の手順でPHPの処理を実行しています。
 1.PostgreSQLのコネクションを貼る。
 2.「begin」トランザクション開始を宣言。
 3.「select for update」にてupdateする行を特定
 4.「update文」を実行
 5.「commit」を実行

もしも、4〜5に移る間に偶然、ブラウザを閉じられたり、
何らかの原因でApacheが止まった場合、トランザクションを掛けて、
「select for update」した行が、ずーとロックされたままに
成るような事はあるのでしょうか?
(心配事:不用意な操作等で、ロックされたままの行が残ることが有るのか)

この様な場合におけるPostgreSQLの動きについて御存知の方がおられましたら、
御教授頂けないでしょうか?URLのポインタ等でも構いません。

お忙しい中お手数ですが、宜しくお願い申し上げます。




pgsql-jp メーリングリストの案内