私はウィンドウズ/マックタイプの議論を始めることを試みていません。
個人NOLOCK
的には、再帰的な実践としては良い考えではない説得力は必要ありません。すべてを開発しているときは、反動的ではなく意図的である必要があります(/ amen)
ですから...担当プログラマが主張するのNOLOCK
が先です。すべてのアドホッククエリで、プロダクションをクエリするときは常にお勧めします。すべてのテーブルにnolockヒントがないストアドプロシージャを見たことはありません。
それをバックアップする何かがなければ、コアの信念はすべて間違っていると言ってやって来る人になりたくない。
さまざまなブログ投稿の下にあるコメントセッションを見るだけでは、リンクを送信するだけでは不十分な場合があります。長年の信念など...それが問題であると確信していない人もいます。参照:私が読んだすべてのnolockブログ投稿の下のコメントセクション。
現在、他の一部のDBAは、不可解なデッドロックに取り組んでいます。NOLOCKがソースであるかどうかをどのように判断しますか?
トレースなどからXMLを見ることをお勧めしますが、これはデッドロックが問題を引き起こしていることを明示的に示すものではありませんか?単純なエラーメッセージは見たことがありません。本当?
他にどのようにしてこれらのデッドロックをこれに固定することができますか?
のようなDDLステートメントCREATE
は手がかりになります。指摘することができる出力や、アラームを上げる前に理論を裏付けるのに役立つと思われるデータの一部はありますか?
または、トレースフラグまたは拡張イベントを実行して、デッドロックが発生したときに何が実行されているかを特定し、DDLステートメントから推定していますか?
nolockヒントを使用してデータがめちゃくちゃになるさまざまな方法をすべて見てみると、明確に特定するのは難しい問題のようです。