次のSQLステートメントは、mssqlserver2000サーバーでデッドロックを生成することがあります
delete from tb_intervaloServico
where idFeriado in (
select ints.idIntervalo
from tb_periodicidadeServico ps, tb_intervaloServico ints
where ints.idPeriodicidadeServico=ps.idPeriodicidadeServico
and idservicoContrato='7f20b4af-9076-48f9-a861-8b78273eadc3'
and fromFixa=0)
何らかの理由で、削除がブロックステータスになり、終了しません(?)これによってブロックされていることがわかった他の唯一のプロセスは、インデックスを再作成するために週末に実行されるメンテナンスプランであるため、何ができるかについてのアイデアがありません。問題を引き起こしている。
これは、削除によって生成されたロックです...
Object Lock Type Mode Status Owner
tb_intervaloServico TAB IX GRANT Xact
tb_periodicidadeServico TAB IS GRANT Xact
問題の根本に到達する方法について誰かが何か指針を持っていますか?テーブルtb_intervaloServicoは、削除と選択で呼び出されているため、ブロッキングのルートであると思われますが、動作を再現できません。