mas*_*ize 2 postgresql locking transactions
我想知道是否有任何命令来解锁或释放由同一事务发出的锁.
伪代码
FUNCTION
TRANSACTION
LOOP
TABLE LOCK
table operations...
"TABLE UNLOCK WANTED"
END
END OF TRANSACTION
END OF FUNCTION
Run Code Online (Sandbox Code Playgroud)
函数查询可能需要一段时间,因为LOOP可能很大,所以我希望能够在事务完成之前解锁.
不,这是不可能的.锁定一直持续到交易结束,没有例外.
因此,您需要:
使用非标准锁,如咨询锁,这需要每个人检查并尊重它; 要么
在外部事务完成之前,在自动提交的事务中执行您的工作.在PostgreSQL中,缺乏自主的子事务支持意味着您必须使用dblink.
| 归档时间: |
|
| 查看次数: |
4858 次 |
| 最近记录: |