Re: Failover causes General network error in ASP.NET



There is a version of the Session object that can live in its own database.
You are still going to get massive timeouts and network errors while the
service is down. I would build a stand-alone test platform to determine how
the system behaves with the dedicated session database. Simulate a failover
by doing a simple SQL service restart.

--
Geoff N. Hiten
Senior Database Administrator
Microsoft SQL Server MVP

"Mike Epprecht (SQL MVP)" <mike@xxxxxxxxxxxx> wrote in message
news:OOwSvicoFHA.860@xxxxxxxxxxxxxxxxxxxxxxx
> Hi
>
> Normal ASP.NET session state, by default, is stored in TempDB in .NET 1.0
> and 1.1 (http://support.microsoft.com/default.aspx?scid=kb;en-us;317604).
>
> This is bad as TempDB is cleared during a failover.
> http://support.microsoft.com/default.aspx?scid=kb;en-us;311209 is the
> instruction to persist session state so that it will live though a
> failover.
>
> During those few seconds of failover, the DB is not available, so anyone
> hitting the server may get an error. A cluster failover should be a very
> rare occurrence (if it is not, you have major problems as your cluster is
> then not operating correctly).
>
> What are your expectations?
>
> Regards
> --------------------------------
> Mike Epprecht, Microsoft SQL Server MVP
> Zurich, Switzerland
>
> IM: mike@xxxxxxxxxxxx
>
> MVP Program: http://www.microsoft.com/mvp
>
> Blog: http://www.msmvps.com/epprecht/
>
> "Matt Chubb" <matthew.chubb@xxxxxxxxxxxxxxxx> wrote in message
> news:upmceQboFHA.3316@xxxxxxxxxxxxxxxxxxxxxxx
>> Thanks for the prompt response.
>>
>> I've removed all session and database code from the ASP.NET test
>> application, but I'm still receiving the same error message as it is
>> caused by the session. IIS sessions are handled by SQL Server so I don't
>> have control over detecting whether the SQL Server connection is
>> available. Is it the way I've configured the session state in SQL Server?
>> Does session state running from SQL Server in a clustered environment not
>> work correctly on a failover?
>> Should I consider removing Session state all together from our
>> applications?
>>
>> Thanks in advance for the help.
>>
>> Matt
>>
>>
>>
>>
>> "Mike Epprecht (SQL MVP)" <mike@xxxxxxxxxxxx> wrote in message
>> news:E82EA7DB-9EC4-4AE9-BB60-C3D937A75F3E@xxxxxxxxxxxxxxxx
>>> Hi
>>>
>>> During the failover, there is no server listening. All the DB
>>> conenctions
>>> are dropped, transactions that were in progress get rolled back and
>>> tempdb
>>> cleared.
>>>
>>> You need to in your code, handle re-connecting and then re-sumit the
>>> batches.
>>>
>>> If you want total transparent failover, you will have to wait for
>>> Database
>>> Mirroring in SQL Server 2005.
>>>
>>> Regards
>>> --------------------------------
>>> Mike Epprecht, Microsoft SQL Server MVP
>>> Zurich, Switzerland
>>>
>>> MVP Program: http://www.microsoft.com/mvp
>>>
>>> Blog: http://www.msmvps.com/epprecht/
>>>
>>>
>>>
>>> "Matt Chubb" wrote:
>>>
>>>> I've searched everywhere on the internet and now this newsgroup for an
>>>> answer to this problem and haven't managed to find a solution.
>>>>
>>>> I've built an Active/Passive cluster with two nodes, the cluster runs
>>>> SQL
>>>> Server and IIS. IIS Session state has been configured to run from SQL
>>>> Server
>>>> using installpersistsqlstate.sql and I've written a very simple ASP.NET
>>>> test
>>>> application that inserts/updates data contained in the virtual SQL
>>>> Server
>>>> and writes data to the session.
>>>>
>>>> The problem I'm experiencing is caused by performing a Move Group
>>>> operation
>>>> in Cluster Administrator and then refreshing my ASP.NET application,
>>>> after a
>>>> few seconds it causes a General Network Error. Once the group has been
>>>> moved
>>>> and I refresh again everything is working fine. I can see the problem
>>>> is
>>>> because the virtual server is offline for a limited period so I
>>>> increased
>>>> timeout on all database commands, but this still does not correct the
>>>> problem.
>>>>
>>>> Any help with this matter would be much appreciated, I'm thinking I may
>>>> have
>>>> to talk to Microsoft and get some answers.
>>>>
>>>> Thanks in advance
>>>>
>>>> Matt
>>>>
>>>>
>>>>
>>
>>
>
>


.



Relevant Pages

  • sessions being killed by sa updating stats?
    ... We're seeing something very strange on our SQL Server 2005 9.0.2047 DB ... Most open connections to the database are being spontaneously ... SQL Server is terminating this session. ...
    (comp.databases.ms-sqlserver)
  • Re: Best way to populate webpages from multiple tables
    ... tables within hash tables, custom classes etc. ... > Set a session expiring cookie at the client that stores the Customer ID. ... > send it to the client, instead store it in your session mgmt sql server - ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Best way to populate webpages from multiple tables
    ... tables within hash tables, custom classes etc. ... > Set a session expiring cookie at the client that stores the Customer ID. ... > send it to the client, instead store it in your session mgmt sql server - ...
    (microsoft.public.dotnet.framework.adonet)
  • Re: More than pessimistic record locking needed...
    ... I assume that each http session has a separate thread, ... database with highly isolated transactions... ... With the correct locking inside a transaction SQL Server places an exclusive ...
    (microsoft.public.dotnet.framework.aspnet)
  • Re: Failover causes General network error in ASP.NET
    ... I've removed all session and database code from the ASP.NET test ... control over detecting whether the SQL Server connection is available. ... > If you want total transparent failover, you will have to wait for Database ... >> I've built an Active/Passive cluster with two nodes, ...
    (microsoft.public.sqlserver.clustering)

Quantcast