本番環境でデッドロックが発生しています。犠牲者と勝者のように思われる同じspidのです。私たちは毎日インデックスを再構築/再編成し、不足しているインデックスを見つけることはありません。
このシナリオに遭遇したことはありますか?任意の提案をいただければ幸いです。
さらに、ここにあります
SQL Server 2017 SP2を使用しています。
まず、クエリ内並列処理のデッドロックは常にSQL Serverのバグです。サポートケースを開いたり、並列処理を抑制(たとえば、MAXDOP 1ヒントを追加)したり、より単純なプランを使用するクエリを取得したりする以外に、それらを修正するためにできることは多くありません。
この場合、EFでは、可能であれば seDatabaseNullSemantics をtrueに設定します。それ以外の場合、EFクエリトランスレータは、C#null比較セマンティクスをエミュレートするTSQLクエリを生成します。これにより、クエリのNULL処理がクリーンアップされます。
それ以外は、このクエリは、別のテーブルと結合されたビューのように見え、その上にページングクエリがあります。したがって、意図が何であるかを理解できれば、おそらく簡略化できます。