数据库死锁场景-CSDN博客

网站介绍:文章浏览阅读384次。单一线程多次进入子事务发生死锁问题:线上问题发生了死锁,但通过死锁日志发现一直在等待查询结果。我们使用的数据库是PGsql,默认的隔离级别是“读已提交”,按理来说查询不会加锁,导致一度被带偏。原因:内层事务执行完update后提交事务,但由于内层事务被外层事务包裹着,所以实际上update对应修改的数据行级锁未释放。当第二次进入内层事务进行update时,由于未能获取数据行级锁则一直等待。第一个内层事务持有锁,直到外层事务全部执行完才进行释放。外层事务等待第二个方法执......_数据库死锁场景