postgresql-死锁

死锁问题:1.长事务,事务中包含了文书的上传下载,导致其他表的锁等待,最终导致死锁。
2.并发更新,如果更新慢的话,很可能导致,锁等待。需要加for update或者ad lock
3.数据库中查询pg_stat_activity中有idle in transaction说明有长事务,很有可能是事务未关闭造成死锁。
 
如何判断idle in transaction的事务中有没有东西要提交?
pg_stat_activity.backend_xid不为空的,即说明这个事务有东西要提交。
 
 
原文地址:https://www.cnblogs.com/zhangfx01/p/10215853.html