Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server sql server中的表分区-如何确保它在查询上赢得死锁?_Sql Server_Tsql_Deadlock_Partitioning - Fatal编程技术网

Sql server sql server中的表分区-如何确保它在查询上赢得死锁?

Sql server sql server中的表分区-如何确保它在查询上赢得死锁?,sql-server,tsql,deadlock,partitioning,Sql Server,Tsql,Deadlock,Partitioning,我存在的祸根是当表分区上的合并陷入僵局并最终丢失时 我已尝试将死锁设置为高优先级 我有一些代码可以提前终止每个命中表的查询,但有时我仍然会在这些毫秒内得到一个查询 我不知所措。有什么好办法吗 必须使用提示才能锁定merge语句-xlock,holdlock使用的对象。 我的建议是使用事件死锁图启动sql事件探查器,并尝试使用工具(我使用此工具)重现死锁,然后找出发生死锁的原因。作为初始信息阅读。必须使用提示来锁定merge语句-xlock,holdlock使用的对象。 我的建议是使用事件死锁图启

我存在的祸根是当表分区上的合并陷入僵局并最终丢失时

我已尝试将死锁设置为高优先级

我有一些代码可以提前终止每个命中表的查询,但有时我仍然会在这些毫秒内得到一个查询


我不知所措。有什么好办法吗

必须使用提示才能锁定merge语句-xlock,holdlock使用的对象。
我的建议是使用事件死锁图启动sql事件探查器,并尝试使用工具(我使用此工具)重现死锁,然后找出发生死锁的原因。作为初始信息阅读。

必须使用提示来锁定merge语句-xlock,holdlock使用的对象。
我的建议是使用事件死锁图启动sql事件探查器,并尝试使用工具(我使用此工具)重现死锁,然后找出发生死锁的原因。作为初始信息阅读。

死锁\u优先级不起作用吗?应该这样。你能展示一些代码吗?@Blam没有想过尝试一个tablock,这可能是一种方法。@usr它也总是在合并过程中。我们在最古老的分区中有几千条记录,这可能就是为什么会有延迟<代码>设置死锁\u优先级高;改变分区函数pfdaily()合并范围(@Day_In);将死锁优先级设置为正常@mbourgon我会在MS Connect上提交一份错误报告。这似乎不对。合并可能有多个内部事务,而不是所有事务都继承死锁优先级。不管怎样,在对整个分区执行操作之前,您可以手动锁定它吗?死锁优先级不起作用吗?应该这样。你能展示一些代码吗?@Blam没有想过尝试一个tablock,这可能是一种方法。@usr它也总是在合并过程中。我们在最古老的分区中有几千条记录,这可能就是为什么会有延迟<代码>设置死锁\u优先级高;改变分区函数pfdaily()合并范围(@Day_In);将死锁优先级设置为正常@mbourgon我会在MS Connect上提交一份错误报告。这似乎不对。合并可能有多个内部事务,而不是所有事务都继承死锁优先级。无论如何,在对整个分区执行操作之前,您可以手动锁定它吗?