同じクエリを実行してより大きなデータセットを返すよりも、より小さなデータセットを返す (そしてより速く実行される) クエリを実行すると、次のエラーが発生するという奇妙な問題があります (実行時間は時々高くなります)。
タイムアウトになりました。操作が完了する前にタイムアウト期間が経過したか、サーバーが応答していません。
オプションのセットを sproc に渡しています。オプションのセットに、より多くのテーブル結合とより大きな結果セットをトリガーするオプションが含まれていない場合、前述の例外が発生します。接続文字列の Connection Timeout プロパティを増やすことでこれを以前に解決したと思っていましたが、そうではないようです。
これをトラブルシューティングする方法を知っている人はいますか? 私は SQL プロファイラーを調べ、小さい入力と大きい入力の両方を使用してクエリを実行しましたが、結果は期待どおりです。入力が小さい場合、クエリは大幅に高速に実行され (ただし、クライアントでタイムアウト)、クエリが大きい場合は実行が遅くなります (ただし、クライアントに結果が返されます)。