A
Andrew Teece
Hope someone can help.
We are trying to deploy an ASP.Net 2.0 application to a 3-node webfarm.
The application uses the ReportViewer control in local mode, hence we
need session state.
Because we dont wan't a single point of failure we use SQL Session
State.
I have setup a persistant sql session state database on a SQL 2000
server (this is a cluster in production, so no SPOF)
I have setup our web.config files to include;
" <sessionState cookieless="false"
mode="SQLServer"
allowCustomSqlDatabase="true"
sqlConnectionString="data
source=xxxxxxxxxxxx;database=xxxxxxxxxxxxxxxxxx;user
id=xxxxxxxxxxxxxxxxxxx;password=xxxxxxxxxxxxxxxxxxxxx"
timeout="20" />"
Problem is, when I try to render a report, I get the following error, and
the session isnt ever useable again;
"System.Web.HttpException: Exception of type 'System.Web.HttpException' was
thrown. ---> System.Web.HttpException: Unable to connect to SQL Server
session database. ---> System.InvalidOperationException: Internal connection
fatal error.
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand
cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet
bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlDataReader.CloseInternal(Boolean closeReader)
at System.Data.SqlClient.SqlDataReader.Close()
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)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method,
DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior,
String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader()
at System.Web.SessionState.SqlSessionStateStore.DoGet(HttpContext context,
String id, Boolean getExclusive, Boolean& locked, TimeSpan& lockAge, Object&
lockId, SessionStateActions& actionFlags)
--- End of inner exception stack trace ---
at
System.Web.SessionState.SqlSessionStateStore.ThrowSqlConnectionException(SqlConnection
conn, Exception e)
at System.Web.SessionState.SqlSessionStateStore.DoGet(HttpContext context,
String id, Boolean getExclusive, Boolean& locked, TimeSpan& lockAge, Object&
lockId, SessionStateActions& actionFlags)
at System.Web.SessionState.SqlSessionStateStore.GetItemExclusive(HttpContext
context, String id, Boolean& locked, TimeSpan& lockAge, Object& lockId,
SessionStateActions& actionFlags)
at System.Web.SessionState.SessionStateModule.GetSessionStateItem()
at
System.Web.SessionState.SessionStateModule.PollLockedSessionCallback(Object
state)
--- End of inner exception stack trace ---
at System.Web.HttpAsyncResult.End()
at System.Web.SessionState.SessionStateModule.EndAcquireState(IAsyncResult
ar)
at
System.Web.HttpApplication.AsyncEventExecutionStep.OnAsyncEventCompletion(IAsyncResult
ar)
System.Web.HttpException: Unable to connect to SQL Server session
database. ---> System.InvalidOperationException: Internal connection fatal
error.
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand
cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet
bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlDataReader.CloseInternal(Boolean closeReader)
at System.Data.SqlClient.SqlDataReader.Close()
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)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method,
DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior,
String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader()
at System.Web.SessionState.SqlSessionStateStore.DoGet(HttpContext context,
String id, Boolean getExclusive, Boolean& locked, TimeSpan& lockAge, Object&
lockId, SessionStateActions& actionFlags)
--- End of inner exception stack trace ---
at
System.Web.SessionState.SqlSessionStateStore.ThrowSqlConnectionException(SqlConnection
conn, Exception e)
at System.Web.SessionState.SqlSessionStateStore.DoGet(HttpContext context,
String id, Boolean getExclusive, Boolean& locked, TimeSpan& lockAge, Object&
lockId, SessionStateActions& actionFlags)
at System.Web.SessionState.SqlSessionStateStore.GetItemExclusive(HttpContext
context, String id, Boolean& locked, TimeSpan& lockAge, Object& lockId,
SessionStateActions& actionFlags)
at System.Web.SessionState.SessionStateModule.GetSessionStateItem()
at
System.Web.SessionState.SessionStateModule.PollLockedSessionCallback(Object
state)
System.InvalidOperationException: Internal connection fatal error.
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand
cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet
bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlDataReader.CloseInternal(Boolean closeReader)
at System.Data.SqlClient.SqlDataReader.Close()
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)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method,
DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior,
String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader()
at System.Web.SessionState.SqlSessionStateStore.DoGet(HttpContext context,
String id, Boolean getExclusive, Boolean& locked, TimeSpan& lockAge, Object&
lockId, SessionStateActions& actionFlags)
"
Regards
Andrew Teece
Technical Architect, eNate
We are trying to deploy an ASP.Net 2.0 application to a 3-node webfarm.
The application uses the ReportViewer control in local mode, hence we
need session state.
Because we dont wan't a single point of failure we use SQL Session
State.
I have setup a persistant sql session state database on a SQL 2000
server (this is a cluster in production, so no SPOF)
I have setup our web.config files to include;
" <sessionState cookieless="false"
mode="SQLServer"
allowCustomSqlDatabase="true"
sqlConnectionString="data
source=xxxxxxxxxxxx;database=xxxxxxxxxxxxxxxxxx;user
id=xxxxxxxxxxxxxxxxxxx;password=xxxxxxxxxxxxxxxxxxxxx"
timeout="20" />"
Problem is, when I try to render a report, I get the following error, and
the session isnt ever useable again;
"System.Web.HttpException: Exception of type 'System.Web.HttpException' was
thrown. ---> System.Web.HttpException: Unable to connect to SQL Server
session database. ---> System.InvalidOperationException: Internal connection
fatal error.
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand
cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet
bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlDataReader.CloseInternal(Boolean closeReader)
at System.Data.SqlClient.SqlDataReader.Close()
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)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method,
DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior,
String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader()
at System.Web.SessionState.SqlSessionStateStore.DoGet(HttpContext context,
String id, Boolean getExclusive, Boolean& locked, TimeSpan& lockAge, Object&
lockId, SessionStateActions& actionFlags)
--- End of inner exception stack trace ---
at
System.Web.SessionState.SqlSessionStateStore.ThrowSqlConnectionException(SqlConnection
conn, Exception e)
at System.Web.SessionState.SqlSessionStateStore.DoGet(HttpContext context,
String id, Boolean getExclusive, Boolean& locked, TimeSpan& lockAge, Object&
lockId, SessionStateActions& actionFlags)
at System.Web.SessionState.SqlSessionStateStore.GetItemExclusive(HttpContext
context, String id, Boolean& locked, TimeSpan& lockAge, Object& lockId,
SessionStateActions& actionFlags)
at System.Web.SessionState.SessionStateModule.GetSessionStateItem()
at
System.Web.SessionState.SessionStateModule.PollLockedSessionCallback(Object
state)
--- End of inner exception stack trace ---
at System.Web.HttpAsyncResult.End()
at System.Web.SessionState.SessionStateModule.EndAcquireState(IAsyncResult
ar)
at
System.Web.HttpApplication.AsyncEventExecutionStep.OnAsyncEventCompletion(IAsyncResult
ar)
System.Web.HttpException: Unable to connect to SQL Server session
database. ---> System.InvalidOperationException: Internal connection fatal
error.
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand
cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet
bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlDataReader.CloseInternal(Boolean closeReader)
at System.Data.SqlClient.SqlDataReader.Close()
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)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method,
DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior,
String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader()
at System.Web.SessionState.SqlSessionStateStore.DoGet(HttpContext context,
String id, Boolean getExclusive, Boolean& locked, TimeSpan& lockAge, Object&
lockId, SessionStateActions& actionFlags)
--- End of inner exception stack trace ---
at
System.Web.SessionState.SqlSessionStateStore.ThrowSqlConnectionException(SqlConnection
conn, Exception e)
at System.Web.SessionState.SqlSessionStateStore.DoGet(HttpContext context,
String id, Boolean getExclusive, Boolean& locked, TimeSpan& lockAge, Object&
lockId, SessionStateActions& actionFlags)
at System.Web.SessionState.SqlSessionStateStore.GetItemExclusive(HttpContext
context, String id, Boolean& locked, TimeSpan& lockAge, Object& lockId,
SessionStateActions& actionFlags)
at System.Web.SessionState.SessionStateModule.GetSessionStateItem()
at
System.Web.SessionState.SessionStateModule.PollLockedSessionCallback(Object
state)
System.InvalidOperationException: Internal connection fatal error.
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand
cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet
bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlDataReader.CloseInternal(Boolean closeReader)
at System.Data.SqlClient.SqlDataReader.Close()
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)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method,
DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior
cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior,
String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader()
at System.Web.SessionState.SqlSessionStateStore.DoGet(HttpContext context,
String id, Boolean getExclusive, Boolean& locked, TimeSpan& lockAge, Object&
lockId, SessionStateActions& actionFlags)
"
Regards
Andrew Teece
Technical Architect, eNate