我在Postgres数据库中看到一些无法解释的死锁。为了简化相关查询,死锁中涉及的事务之一是:UPDATE A SET CHUNK_ID=1, STATUS='PROCESSING' WHERE ID IN (我的问题是,这里怎么可能出现死锁呢?我想不出第一个事务可能导致死锁的任何场景,而不管同时运行的任何其他查询。是否存在这样的情况,即使用嵌套SELECT ...FOR UPDATE可以是死锁的一部分吗?
谢谢
其中一个触发器最近一直导致死锁: ON [dbo].[RowVersion] IS NULL
我还没有看到实际的Server日志,但我可以访问公开有关死锁的数据的报告,这些报告表明,涉及死锁的两个进程都在运行此触发器的第二部分,即UPDATE语句我对死锁的理解非常有限,因为它们通常发生在两个进程以不同的顺序访问对象时,所以我不确定运行相同SQL的两个进程如何会导致死锁