Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 2696
  • Last Modified:

Event 1309, ASP.NET 4.0.30319.0 - SQLException

I have a 2008 R2 Standard server running IIS.  All of a sudden, one of our websites has intermittently stopped working.   One moment, everything is working fine, another moment, you try to go to a page and you get:

Event code: 3005
Event message: An unhandled exception has occurred.
Event time: 1/15/2014 10:56:43 AM
Event time (UTC): 1/15/2014 3:56:43 PM
Event ID: 7bb0e98b384342bfa73eb0d9a96a28fe
Event sequence: 1824
Event occurrence: 9
Event detail code: 0
 
Application information:
    Application domain: /LM/W3SVC/1/ROOT/Tracker3-1-130342667892637656
    Trust level: Full
    Application Virtual Path: /Tracker3
    Application Path: C:\Program Files\Tracker.Net 3\Tracker3\
    Machine name: INTRANET
 
Process information:
    Process ID: 5896
    Process name: w3wp.exe
    Account name: IIS APPPOOL\Framework_4_Classic_x86
 
Exception information:
    Exception type: SqlException
    Exception message: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.
   at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
   at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at VBTrain.WebTracking.Tracker3._default.UpdateDateRelatedLessonStatuses() in C:\2010Projects\LMS\Tracker.Net 3\LMSTracker3\default.aspx.vb:line 315
   at VBTrain.WebTracking.Tracker3._default.Page_Load(Object sender, EventArgs e) in C:\2010Projects\LMS\Tracker.Net 3\LMSTracker3\default.aspx.vb:line 109
   at System.Web.UI.Control.OnLoad(EventArgs e)
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

The wait operation timed out

 
 
Request information:
    Request URL: http://intranet/Tracker3/default.aspx?ReturnUrl=/Tracker3/LMSCourseList.aspx 
    Request path: /Tracker3/default.aspx
    User host address: 10.42.0.135
    User:  
    Is authenticated: False
    Authentication Type:  
    Thread account name: IIS APPPOOL\Framework_4_Classic_x86
 
Thread information:
    Thread ID: 21
    Thread account name: IIS APPPOOL\Framework_4_Classic_x86
    Is impersonating: False
    Stack trace:    at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
   at System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
   at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
   at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds)
   at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)
   at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
   at VBTrain.WebTracking.Tracker3._default.UpdateDateRelatedLessonStatuses() in C:\2010Projects\LMS\Tracker.Net 3\LMSTracker3\default.aspx.vb:line 315
   at VBTrain.WebTracking.Tracker3._default.Page_Load(Object sender, EventArgs e) in C:\2010Projects\LMS\Tracker.Net 3\LMSTracker3\default.aspx.vb:line 109
   at System.Web.UI.Control.OnLoad(EventArgs e)
   at System.Web.UI.Control.LoadRecursive()
   at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
 
 
Custom event details:


The solution is to simply recycle the Framework_4_Classic_x86 app pool, but my question is why does this keep happening.  Recycling the app pool is a band-aid and I am looking for the fix so this doesn't happen.  Any help is greatly appreciated.
0
pitster
Asked:
pitster
  • 3
1 Solution
 
StephanLead Software EngineerCommented:
On the looks of the exception the SQL Server is not responding, but you probably already figured that out. What also could be is that you have connections staying open but normally that would cause a different exception message.

Check to see that the applcation is running in Release mode, not debug mode.  In Debug mode the connection pooling doesn't work.

A thing you can do to monitor is running the following query to see the connections:

user master
select * from sysprocess where dbid = yourdatabaseId

Open in new window


database Id you find by following query

use youdatabaseName
select db_id()

Open in new window


Replace "youdatabaseName" with the databasename you have

What also could be is that you have queries that take too long to answer. Maybe looking into a large table?

These are not really concrete solutions to your issue but hope it will help.
0
 
deanvanrooyenCommented:
You will need to investigate on the SQL server box, run a trace on the SQL server, you will be able to tell if possibly there is locking, long running queries etc, missing indexes, other things like SQL environment - how busy is the site compared to number of CPUs and ram on the box etc has someone set the max memory to 100 mb etc
0
 
pitsterAuthor Commented:
Thanks everyone.  I am forwarding these posts on to my SQL team.  Hope to hear back soon with some relevant information for an update.
0
 
pitsterAuthor Commented:
The issue ended up being with an overloaded SQL server.  Seperated some items off so the SQL box could become responsive and now the issues appear to have gone away.
0
 
pitsterAuthor Commented:
Issue ended up being a secondary system affecting this primary system
0

Featured Post

[Webinar] Database Backup and Recovery

Does your company store data on premises, off site, in the cloud, or a combination of these? If you answered “yes”, you need a data backup recovery plan that fits each and every platform. Watch now as as Percona teaches us how to build agile data backup recovery plan.

  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now