Link to home
Start Free TrialLog in
Avatar of tony_bailey
tony_bailey

asked on

Dreamweaver MX Calling SQL Server Stored Procedure - 'Timeout Expired' error

Hi

I am a new user - so all help would be most appreciated.

I am calling a SQL Server stored procedure from Dreamweaver MX, and am using VB and ASP.NET.

My queries have been running fine until a user started pulling back large sets of data when the following  error message was displayed after 30 seconds of processing time:

System.Data.SqlClient.SqlException: Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.SqlClient.SqlCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.FillFromCommand(Object data, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable)
at DreamweaverCtrls.DataSet.DoInit()

Whatever I do I can't seem to increase the Timeout value to greater than 30 seconds.

I have checked that the SQL Server Query Timeout limit is set to 0, so it shouldn't be the problem.
I have tried adding <%server.ScriptTimeout=360%> to the top of the web page, to no effect.

I have investigated setting the SqlCommand.CommandTimeout value, but am unsure how it will fit in the MM:DataSet definition:

<MM:DataSet
runat="Server"
id="spResults"
IsStoredProcedure="true"
CreateDataSet="true"
ConnectionString='<%# System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_STRING_connProgDB2002") %>'
DatabaseType='<%# System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_DATABASETYPE_connProgDB2002") %>'
CommandText="dbo.sp_Extract_By_Prog_Post02"
Debug="true"
>

Or am I misunderstanding the problem?
Is it the Connection time which is timing out?

All suggestions most gratefully accepted.
Many thanks

Tony Bailey
Avatar of danblake
danblake

Have you had a look at the Administration web-site tool for CF Dreamweaver and the timeouts there to your connection strings ?
(On CF Server -- the timeouts were handled by the CF app Server and changed in the Admin web-site and the default was 30 seconds...)
Avatar of tony_bailey

ASKER

Apologies for not getting back to your reply sooner.

Your suggestion appears to be for ColdFusion Dreamweaver solutions while I am using ASP.NET.

Any ideas for asp.net, as my understanding is that it it quite different.

Many thanks
Even though you are using VB / ASP -- you can still hook in via the CF Connections to the databases.

If you have a ASP.NET connection, what are you using for your connection string a VB/ASP.NET OLEDB Connection or a VB/ASP.NET ODBC Connection ?

By the looks of it you are using CF Connections to your database.
Try adding : ConnectionTimeout = 0 or ConnectTimeout = 0


I am connecting using the Dreamweaver utilities, e.g.

<MM:DataSet
runat="Server"
id="spResults"
IsStoredProcedure="true"
CreateDataSet="true"
ConnectionString='<%# System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_STRING_connDB2002") %>'
DatabaseType='<%# System.Configuration.ConfigurationSettings.AppSettings("MM_CONNECTION_DATABASETYPE_connDB2002") %>'
CommandText="dbo.sp_Extract_Post02"

I tried adding a connection timeout parameter to this code, but it was ignored as it doesn't seem to be supported.

The actual connection is made through a web.config file, containing for example the following:
<configuration>
      <appSettings>
            <add key="MM_CONNECTION_HANDLER_connDB2002" value="sqlserver.htm" />
            <add key="MM_CONNECTION_STRING_connDB2002" value="Persist Security Info=False;Data Source=(local);Initial Catalog=ProgDB;User ID=;Password=;Trusted_Connection=Yes" />
            <add key="MM_CONNECTION_DATABASETYPE_connDB2002" value="SQLServer" />
            <add key="MM_CONNECTION_SCHEMA_connDB2002" value="" />
            <add key="MM_CONNECTION_CATALOG_connDB2002" value="" />
      </appSettings>
</configuration>

Many thanks for all your advice

Tony

ASKER CERTIFIED SOLUTION
Avatar of danblake
danblake

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial