Nil*_*ann 5 postgresql locking
系统崩溃后,我的 Postgresql 数据库确实锁定了一行。
该pg_locks表包含许多没有 pid 的行。IE
select locktype,database,relation,virtualtransaction, pid,mode,granted from pg_locks p1;
locktype | database | relation | virtualtransaction | pid | mode | granted
---------------+----------+----------+--------------------+-------+------------------+---------
relation | 16408 | 31459 | -1/40059 | | AccessShareLock | t
relation | 16408 | 31459 | -1/40059 | | RowExclusiveLock | t
relation | 16408 | 31022 | -1/40060 | | AccessShareLock | t
transactionid | | | -1/40060 | | ExclusiveLock | t
relation | 16408 | 31485 | -1/40060 | | AccessShareLock | t
Run Code Online (Sandbox Code Playgroud)
如何杀死事务 40060 并移除锁?
好吧,我自己找到的解决方案:
select * from pg_prepared_xacts where transaction = 40060;ROLLBACK PREPARED gid;这将清除锁。
| 归档时间: |
|
| 查看次数: |
2890 次 |
| 最近记录: |