HTTP/1.1 New Session Failed & sessions resetting

R

riprod

Someone in the IIS newsgroup suggest I post this here, so sorry in advance
for the cross posting.

I have a Win 2003 SP1 with IIS 6 and host about 40 websites, most of
them useing ASP/VB with access databases. The server is a Dell Dual 2.4Ghz
XEON with 512Mb Ram.

Every few days I get the error 'HTTP/1.1 New Session Failed' and the server
stops showing the sites. It comes right after a bit and then the error comes
back. I
have separed the sites into 10 per application pool but it still does it.
Occassionally it will actually look like it is working but the sessions just
keep resetting and
the users get logged out every 2 or 3 minutes.

There is a hotifx 838306 which according to MS is in SP1 but according to
everyone else, is NOT. It wont install on SP 1 because it needs another
hotfix first (837001), which will not install because there is a later
version of the 2nd hotfix in SP1. Catch 22!

So my solution is to set up my server to reboot every night at 2am. That
keeps it going.... barely.

People keep saying you don't need to reboot, just recycle the app pools.
Well that does not fix anything, only a cold reboot solves the problem... for
a few hours anyway.

UURRRRGGGG! Please can someone help.
 
M

Mark J. McGinty

riprod said:
Someone in the IIS newsgroup suggest I post this here, so sorry in advance
for the cross posting.

I have a Win 2003 SP1 with IIS 6 and host about 40 websites, most of
them useing ASP/VB with access databases. The server is a Dell Dual 2.4Ghz
XEON with 512Mb Ram.

Every few days I get the error 'HTTP/1.1 New Session Failed' and the
server
stops showing the sites. It comes right after a bit and then the error
comes
back. I
have separed the sites into 10 per application pool but it still does it.
Occassionally it will actually look like it is working but the sessions
just
keep resetting and
the users get logged out every 2 or 3 minutes.

There is a hotifx 838306 which according to MS is in SP1 but according to
everyone else, is NOT. It wont install on SP 1 because it needs another
hotfix first (837001), which will not install because there is a later
version of the 2nd hotfix in SP1. Catch 22!

So my solution is to set up my server to reboot every night at 2am. That
keeps it going.... barely.

People keep saying you don't need to reboot, just recycle the app pools.
Well that does not fix anything, only a cold reboot solves the problem...
for
a few hours anyway.

UURRRRGGGG! Please can someone help.

I read the hotfix article, I don't think it's a silver bullet for you -- the
symptom it describes is that Jet stops responding, that would cause timeout
errors or 500-100 errors, not session failed. Session failed happens when
IIS can't scrape together enough memory to create a new session.

It sounds to me like the underlying problem is the application is leaking
resources. Are you properly closing and destroying your ADO (and other)
objects? Are you ReDim-ing large arrays to 0 bounds after using them? Are
you heavily using the session and/or application objects? Are you Removing
session objects when you're done with them?

Bottom line is, if while running your app consumes more and more memory,
without allowing it to return to the pool of free memory, then you have a
code problem that no amount of memory will fully solve. It's normal for the
first few trips through an app to leave commit charge a little higher than
it was, but if it goes up every time a given page is loaded or a process
runs, it's a leaker.

That being said, 512 MB seems a little lean doesn't it? Memory is cheap,
even from Dell, and it likely will buy you some time to find and fix your
leak.

Lastly, not that it addresses your issue, but you should also strongly
consider leaving Jet in the dust (where it belongs) and moving up to a
decent db engine, like SQL Server. The grief level Jet will bring you rises
on a steep curve as you add more concurrent access to the mix. Can you
really afford to bind the growth of your business with something like Jet?

Assuming your business is growing, do you really want to put-off the
inevitable? When the number of new users takes you over the edge, and Jet
becomes thoroughly unworkable, the users themselves have a way of correcting
the problem, but it's not really healthy for your bottom line. And erosion
of user confidence may be intangible but it is still a substantial factor,
both short and long term.

-Mark
 
J

Joe Iano

I would second Mark's comment that this doesn't look the the Jet db bug. We
have a hardware and software setup very similar to yours. We think we are
occasionally seeing the Jet bug. When it occurs, db access breaks, but html
and asp do not. Your Session Failed error sounds like something else.

Someone in the IIS newsgroup suggest I post this here, so sorry in advance
for the cross posting.

I have a Win 2003 SP1 with IIS 6 and host about 40 websites, most of
them useing ASP/VB with access databases. The server is a Dell Dual 2.4Ghz
XEON with 512Mb Ram.

Every few days I get the error 'HTTP/1.1 New Session Failed' and the server
stops showing the sites. It comes right after a bit and then the error comes
back. I
have separed the sites into 10 per application pool but it still does it.
Occassionally it will actually look like it is working but the sessions just
keep resetting and
the users get logged out every 2 or 3 minutes.

There is a hotifx 838306 which according to MS is in SP1 but according to
everyone else, is NOT. It wont install on SP 1 because it needs another
hotfix first (837001), which will not install because there is a later
version of the 2nd hotfix in SP1. Catch 22!

So my solution is to set up my server to reboot every night at 2am. That
keeps it going.... barely.

People keep saying you don't need to reboot, just recycle the app pools.
Well that does not fix anything, only a cold reboot solves the problem...
for
a few hours anyway.

UURRRRGGGG! Please can someone help.
 
R

riprod

Thanks to both of you. Finally some answers that make sense.

On your advice, I upped my memory by 1Gb to 1.5G. I also separated the
application pools to 5 websites per pool. Seams OK so far but I don't know
for how long.

I also can't believe that bad ASP code can cause this, surely MS has some
protection in for this because otherwise evil programmers could crash every
MS based ISP out their by just hosting one malicious website with them. It's
also impossible to test every page because there are literally 1000s. I tried
something called Iisstate but can't make head or tail of the logs and don't
even know what ID to set it for. I can't change to SQL because it is a ton of
my clients apps that would need to be developed all over again, they would
rather just move to an ISP that can handle Access without crashing.

So I am pretty much stuck with praying that the memory is the issue and an
extra 1G will sort it out.

Unless anyone else knows a way to find the bad code ???

Thanks - Chris
 
B

Bob Barrows [MVP]

riprod said:
Thanks to both of you. Finally some answers that make sense.

On your advice, I upped my memory by 1Gb to 1.5G. I also separated the
application pools to 5 websites per pool. Seams OK so far but I don't
know for how long.

I also can't believe that bad ASP code can cause this, surely MS has
some protection in for this because otherwise evil programmers could

I don't understand this assumption. Bad code can bring any application down,
not just IIS applications.

NO application environment can prevent bad code from bringing it down ...
 
R

riprod

yes, but should it bring down ALL 40 or 50 sites on the server ? You would
think it would only crash itself not all the websites.
 
B

Bob Barrows [MVP]

I still don't understand. Why would you think this? It is ONE application
(inetserver) that is running all of those websites ... Cause a memory leak
that crashes inetserver, and ...

The danger can be mitigated by isolating the different processes (web
applications) in their own memory spaces. But this consumes/requires more
resources ... and is not perfect.

Fault tolerance can only be achieved with multiple servers: a web farm.

Bob Barrows
 
J

Joe Iano

If you want help solving the problem, stop griping about IIS and put your
energy into fixing the problem. Here is a good explanation of how to use
IISState:
http://www.adopenstatic.com/faq/IISConfigureIISState.aspx

Post results to the appropriate news group and ask for help interpretting
the results.

Thanks to both of you. Finally some answers that make sense.

On your advice, I upped my memory by 1Gb to 1.5G. I also separated the
application pools to 5 websites per pool. Seams OK so far but I don't know
for how long.

I also can't believe that bad ASP code can cause this, surely MS has some
protection in for this because otherwise evil programmers could crash every
MS based ISP out their by just hosting one malicious website with them. It's
also impossible to test every page because there are literally 1000s. I
tried
something called Iisstate but can't make head or tail of the logs and don't
even know what ID to set it for. I can't change to SQL because it is a ton
of
my clients apps that would need to be developed all over again, they would
rather just move to an ISP that can handle Access without crashing.

So I am pretty much stuck with praying that the memory is the issue and an
extra 1G will sort it out.

Unless anyone else knows a way to find the bad code ???

Thanks - Chris
 
M

Mark J. McGinty

riprod said:
yes, but should it bring down ALL 40 or 50 sites on the server ? You would
think it would only crash itself not all the websites.

Oh I get it, you're a hosting provider... shouldn't you be using isolation
mode for each virtual server? That's supposed to be your best hedge against
one app taking down the server. I think that would isolate each site in
it's own host process, which would give you a way to monitor users that are
consuming inordinate resources. It wouldn't tell you directly, but you
could unload each app, one at a time, and watch task manager -- or better
yet, setup a PDH counter set.

Anyway, seeing that you have no control whatsoever over the code, this is
likely the wrong group, but... in my opinion, you should max-out that board
with memory. For that scenario 512MB was way under-equipped -- I have 2GB
in my desktop PC, and 512MB in my laptop. You should also take steps to
monitor resources consumed, and sanction any subscribers that have run-away
leakers, or are otherwise abusing the environment.

-Mark
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,994
Messages
2,570,223
Members
46,810
Latest member
Kassie0918

Latest Threads

Top