Solved

Event 1309, ASP.NET 4.0.30319.0 - SQLException

Posted on 2014-01-15
5
2,445 Views
Last Modified: 2014-02-22
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
Comment
Question by:pitster
  • 3
5 Comments
 
LVL 16

Expert Comment

by:Stephan
ID: 39784676
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
 
LVL 12

Expert Comment

by:deanvanrooyen
ID: 39795173
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
 
LVL 3

Author Comment

by:pitster
ID: 39796738
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
 
LVL 3

Accepted Solution

by:
pitster earned 0 total points
ID: 39865453
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
 
LVL 3

Author Closing Comment

by:pitster
ID: 39878987
Issue ended up being a secondary system affecting this primary system
0

Featured Post

NFR key for Veeam Backup for Microsoft Office 365

Veeam is happy to provide a free NFR license (for 1 year, up to 10 users). This license allows for the non‑production use of Veeam Backup for Microsoft Office 365 in your home lab without any feature limitations.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

If you don't have the right permissions set for your WordPress location in IIS, you won't be able to perform automatic updates. Here's how to fix the problem.
A phishing scam that claims a recipient’s credit card details have been “suspended” is the latest trend in spoof emails.
This video shows how to use Hyena, from SystemTools Software, to bulk import 100 user accounts from an external text file. View in 1080p for best video quality.
In an interesting question (https://www.experts-exchange.com/questions/29008360/) here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…

861 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question