Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
Source Error:
Line 91:
Line 92: DataSet getData;
Line 93: getData = SqlHelper.ExecuteDataset(ConfigurationManager.ConnectionStrings["connstr"].ConnectionString, CommandType.StoredProcedure, "Course_NewReportGet_Get_Sav", objPara);
Line 94:
Line 95: foreach (DataRow dr in getData.Tables[0].Rows)
Source File: c:\Users\Ryan\bancroft archive\santiago\santiago code\trunk\admin\tools\Optimus.aspx.cs Line: 93
Stack Trace:
[SqlException (0x80131904): Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.]
System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +1950890
System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +4846875
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +194
System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +2392
System.Data.SqlClient.SqlDataReader.ConsumeMetaData() +33
System.Data.SqlClient.SqlDataReader.get_MetaData() +83
System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) +297
System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) +954
System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) +162
System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) +32
System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) +141
System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior) +12
System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior) +10
System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +130
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) +287
System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) +94
Mexico.Data.SqlHelper.ExecuteDataset(SqlConnection connection, CommandType commandType, String commandText, SqlParameter[] commandParameters) +149
Mexico.Data.SqlHelper.ExecuteDataset(String connectionString, CommandType commandType, String commandText, SqlParameter[] commandParameters) +93
admin_tools_Optimus.GetUsers() in c:\Users\Ryan\bancroft archive\santiago\santiago code\trunk\admin\tools\Optimus.aspx.cs:93
admin_tools_Optimus.GetCompanies() in c:\Users\Ryan\bancroft archive\santiago\santiago code\trunk\admin\tools\Optimus.aspx.cs:75
admin_tools_Optimus.Proceed(Object sender, EventArgs e) in c:\Users\Ryan\bancroft archive\santiago\santiago code\trunk\admin\tools\Optimus.aspx.cs:43
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +111
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) +110
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +10
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +36
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1565
答えて
おそらくこれは当てはまりませんが、それほど言及する必要はありません。デフォルトのCommandTimeOutは30秒です。これは、Webアプリケーションの99.9%で起こっているすべてのアクションに対して、十分な時間が必要です。アクションがそれよりも時間がかかることが絶対に確実でない限り、SQLを最適化しようとすると、<に戻ります。適切なインデックス作成は、それを開始するのに適しています。
これは実際には1回限りの取引ですが、大量のデータ変換を実行しようとしていますが、タイムアウトを5000に設定してもタイムアウトします。 – BigOmega
@ Ryan:1回限りの取引の場合は、クエリを実行します。 –
お勧めですが、残念ながらOPの質問には答えません。 DBに対して非常に長いクエリを実行することが唯一の選択肢であるケースがいくつかあります。この場合、SqlCommand.CommandTimeoutを変更すると動作します。 –
「接続タイムアウト= 90」を接続文字列に追加することでこれを達成できます。クエリが30秒以上かかる場合は、何とかクエリを最適化することを検討する必要があります。インデックスを追加する必要があるか、ビューを作成する必要があるかもしれません。
@Stijnコメントで指摘されている問題を修正するために編集されています。
SqlCommand.CommandTimeoutプロパティを設定すると、コマンドのタイムアウト時間を長くすることができます。
私はこれが古いことを知っていますが、私はダウン投票を望んでいます(しかし、私の低い評判のせいで私はできません)。彼はMicrosoft.ApplicationBlocks.DataでSqlHelperクラスを使用しているため、 'SqlCommand.CommandTimeout'は使用できません。 – Dobermaxx99
Alは30秒間が多くなければならないためです。タイムアウト期間を長くすることは、基本的な問題の包帯に過ぎません。
私の経験では、ストアドプロシージャは時間の90%も高価です。これらのエラーを最後に見直していたとき、私はストアドプロシージャのコストが1.00を超えないという一般的なルールを持っていました。彼らがより高価なほど、これらの例外をブロックして生成するリスクが大きくなります。
このルーチンのパフォーマンス基準はどのように分かりますか?たぶん、その中でたくさんのバックグラウンドの仕事があります。ストアドプロシージャ –
明らかにこのアドバイスは当てはまりません。買い手責任負担。 –
そして、接続文字列でそれを追加します。
server={servername};database={dbname};uid={username};pwd={password};Connect Timeout=600
OPがコマンドタイムアウトを増やす方法を見つけようとしていませんか?これは接続文字列から変更することはできません。@JP Aliotoの答えは、尋ねられていることに最も近い – dotnetguy
使用したクエリは、データの量のために最適化されていませんでした。私たちのケースでは、未使用のデータをパージしましたが、より良い選択肢は、クエリを最適化するか、ハウスキーピングを調べることです。アクションの後、私たちはエラーをもう受信しませんでした。もちろん、それはあなたがこのエラーを受け取った状況と、この解決策があなたを助けるかどうかによって決まります。
- 1. SolrConnectionでタイムアウトを延長するにはどうすればよいですか? (SolrConnectionException:操作がタイムアウトした)
- 2. Silverlight 2.0でWebサービスのタイムアウトを延長するにはどうすればよいですか?
- 3. rvalue参照での一時的な存続期間の延長
- 4. ストアドプロシージャコールを検索するにはどうすればよいですか?
- 5. ストアドプロシージャコールを記録するにはどうすればよいですか?
- 6. はどうすれば延長
- 7. PHPでクラスを参照するにはどうすればよいですか?
- 8. プログラムでページを参照するにはどうすればよいですか?
- 9. アセンブリ参照のソースコードへの参照を追加するにはどうすればよいですか?
- 10. JavaScriptファイルを参照するにはどうすればよいですか?
- 11. iPhoneのCoreLocation参照時に標準のスピンアニメーションを表示するにはどうすればよいですか?
- 12. アクティビティの切り替え時に参照を削除するにはどうすればよいですか? [Android]
- 13. 長時間の中でオブジェクトのレンダリングを調整するにはどうすればよいですか?
- 14. 長時間実行しているGoプログラムを実行するにはどうすればよいですか?
- 15. 長時間実行されているmapreduce操作でカーソル・タイムアウトを回避するにはどうすればよいですか?
- 16. プロジェクト間の参照グラフを作成するにはどうすればよいですか?
- 17. v8エラーの未定義参照を修正するにはどうすればよいですか?
- 18. 2つのオブジェクト間の相互参照を避けるにはどうすればよいですか?
- 19. 2時間の間に数時間を取得するにはどうすればよいですか?
- 20. ビューでViewModelを参照するにはどうすればいいですか
- 21. ユーザーがC#でファイルを参照できるようにするにはどうすればよいですか?
- 22. Objective-Cの2つのクラス間で参照を持つにはどうすればよいですか?
- 23. hook_blockキャッシュ時間の長さを調べるにはどうすればよいですか?
- 24. 長いPHPスクリプト - ブラウザがタイムアウトするまでの時間は?
- 25. 弱いグローバル参照は何ですか?それはグローバル参照とどのように違うのですか?
- 26. Androidでこのような動きをするにはどうすればいいですか? (ビデオを参照)
- 27. ブラウザスクリプトのタイムアウトを延長する方法
- 28. SQL Serverで2時間の時間を生成するにはどうすればよいですか?
- 29. 共通DLLを参照するアセンブリ間で参照型を渡すにはどうすればよいですか?
- 30. Scalaでインスタンス化されていないクラスを参照するにはどうすればよいですか?
ConnectionTimeoutプロパティは読み取り専用です。 –