SQL Server-在单个表上多次插入会导致死锁

时间:2019-07-16 13:00:29

标签: sql sql-server indexing deadlock

将了解在由于多个插入语句而导致具有1个聚集索引和1个非聚集索引的表中发生死锁的情况。

解决方案很奇怪,其中ignoreDuplicateKey设置为False,从而解决了该问题。这是TRUE的错误,当它为真时会发生死锁。我读了很多有关索引和锁定的信息,插入可能会导致锁定,但是此属性如何解决问题呢?

场景-1个表,使用Spring批处理(5个多个分区)尝试并行插入5个线程,提交间隔为1000。 2个索引-1个主键唯一聚集索引,1个非聚集唯一索引(带有IgnoreDuplicateKey=True)。

桌上没有触发器。

由于死锁,在40000个中,〜150个插入失败。死锁失败的数量随着数量的增加而增加。

0 个答案:

没有答案