locked
Classic Application Pool Hang Problem with Classic ASP! RRS feed

  • Question

  • User-1003905293 posted

    Hello,

     I have (AGAIN!) a very common issue with Classic ASP sites and IIS 7.5 Application Pool stucks... i have read so many articles about that and i really wonder why Microsoft have not developed any fix-update yet!

    I am talking about very offen situations that for some unknown reason, IIS Application Pool hungs and most classic ASP sites do not load (loading forever) and then i have to recycle application pool to make all work.

     My Setup is:
    Dedicated WIndows 2008 R2 64Bit Server
    IIS 7.5
    Plesk Panel, and full RDP access
    1 application pool containing 170 websites , most of them are classic ASP websites.

     EVerything was working normal untill i decided to do windows updates (i had to do over 100 security updates by Microsoft). All updates were done without any problem. But after that i face this issue with app pool stuck AGAIN!! It is very annoying.

     I tried to isolate 2-3 Classic ASP websites to dedicated app pools, and i set a Failed Request Tracing rule for every one of them. What i get on every one of them are:

    LOG_FILE_MAX_SIZE_TRUNCATE  (warning)

    and also in Module Notification a NO_END module:

    ModuleName IsapiModule
    Notification 128
    fIsPostNotification false
    Notification EXECUTE_REQUEST_HANDLER
     

    I haven't change anything in my code and all websites were working fine untill the windows updates!! Please tell me what to do because i have very serious problem with most of my customer complaining that their websites are not loading....

     

    thank u very much!!

     

    EDIT:  I have just noticed something in memory. When i recycle App Pool, it is consuming over 20-30 mbytes of Ram. After , say 3 hours, it is increased to over 100 MBytes of ram ( for a single website). What is going on?? What would be the reason for such memory increase during time??

    Also when App Pool is stuck and i try to recycle app pool i get this error on event viewer: "A process serving application pool 'liolios.gr(domain)(2.0)(pool)' exceeded time limits during shut down. The process id was '3456'. "

     

     

    Monday, May 2, 2011 5:16 AM

All replies

  • User-1853252149 posted

    I haven't change anything in my code and all websites were working fine untill the windows updates!!
     

    What happened when you reversed out the updates?

    Jeff

    Wednesday, May 4, 2011 7:57 AM
  • User-2068698782 posted
    I actually have the same trouble, all our classic ASP code are freezing, I pass all my time to recycle pools since some days. We did not install any windows update, because we switched from server. Our iis 7.0 server (2008) did not have any trouble, but we did not run any windows update since 1 month. And now on the new server with all updates installed, our asp3 pools are freezing. 32 or 64 bits pools. A lot of asp classic application pools needs to be recycled a lot of time during the day. Did you found a solution?
    Monday, May 9, 2011 4:23 PM
  • User-1003905293 posted
    hello again, i couldnt determine the reason for these app pool hangs as long as the only report i got from iis is a log trancate warning. so what i did, and also suggest you to do: 1 check all your asp pages one by one when you open a db connection u must be sure that u close it on the end of ur code, or just before u do a response.redirect 2 do exactly the same thing for all adodb recordsets u open. you should place a "set rs = notthing " when u do not need it 3 take a closer look to all activex objects u use to your application. some old activex or com objects are not working anymore on latest operating systems or updates of iis. try to isolate these objects and see if problem still occurs 4 be sure u close all connections with activex objects or com objects just before ur end code or a response.redirect call. 5 isolate one website to a dedicated pool and monitor it for some days. also monitor its iis worker process memory consumption when u are debugging. hope i helped u. give us a feedback if you solve ur problem. thanx!
    Monday, May 9, 2011 8:13 PM
  • User-2068698782 posted
    Hi, I think that I found something.

    The file c:\windows\system32\vbscript.dll is dated from 2011-4-18, a brand new file.

    The update that changed this file is this one
    http://support.microsoft.com/kb/981332

    I think that they changed something on the way the createobject/cleanup are managed and that's the cause of our troubles.
    I changed some objects and verified a lot of obj=nothing, but if I can't modify everything. Our code was not perfect, but is was working and never freezes. It's certain that we forgot some var=nothing, but I would like to get back to the old vbscript.dll to see if it solve the issue.
    I still have access to my old server that did not get this update, the file is version 5.8.6002.18222 (instead of 5.8.7601.16978), and is dated 2011-3-4. It was working very well.

    Hope MS read this and do something.
    Tuesday, May 10, 2011 11:39 AM
  • User-2068698782 posted
    Oups forget it, my file dated of 2011-04-18 is the date of my OS installation. It seems that this file was date from before, delivered with IE9. Did you notice if your troubles began after the installation of IE9?

    http://www.ie8blog.com/2011/03/27/internet-explorer-9-rtm-windows-7-x86-file-version-information/
    vbscript.dll 5.8.7601.16978
    Maybe IE9 is a new track to follow to find what exactly make this trouble begin.
    Tuesday, May 10, 2011 12:45 PM
  • User-2068698782 posted
    To help solve my issue and understand yours, can we compare our dll file. What is the version of you c:\windows\system32\vbscript.dll, and did you install IE9 when you install all these updates. The release of ie9 upgraded 5.8.7600.xxx to 5.8.7601.16978. I don't know which dll file was there before, I am actually installing vmware machines to compare dll versions before/after windows updates.
    Tuesday, May 10, 2011 1:00 PM
  • User-1003905293 posted
    hello.... i did not install any update for internet explorer because i dont use internet explorer at all on my server. i installed all other updates. i have windows 2008 r2 64 bit os. i think that my issue finally had to do with errors of forgot to close objects or adodb recordsets. my web sites are working smooth and i didnt have any app pool hang till friday!
    Tuesday, May 10, 2011 5:30 PM
  • User-2068698782 posted
    Thank you for the update. We are actually working to find all piece of code where recordset and/or connections are not closed and set to nothing. We also modify the usage of the xmlhttp object, we found that using this object:

    Server.CreateObject("MSXML2.ServerXMLHTTP.6.0")

    instead of

    Server.CreateObject("WinHttp.WinHttpRequest.5.1")

    gave us some trouble after a while. So we changed all xmlhttp object to use winhttprequest, we hope it may help, on 1 of our pool it seems to have solved the issue. Also, we were using an old jmail object, that we are now switching to cdo.message. It seems that this bug from the OS is the occasion to clean all of our code!
    Tuesday, May 10, 2011 7:08 PM
  • User-1889538252 posted
    Have you or anyone found a good fix for this we are having the same type of issues here and have half of are IT team working on this. Costing us a bunch of money ever since this start. Any help would be great.
    Friday, May 27, 2011 1:10 PM
  • User-2068698782 posted
    In our case... we found that our trouble was due to a license upgrade from Windows Standard to Windows Enterprise that was a failure.

    We think that what happened, windows know it was upgraded to enterprise, but iis did not know. IIS did not know what revision of Windows was isntalled, so it goes down to the basic revision, iis for Windows 7 pro, that lock connections to 10 max.

    We reinstalled windows with Enterprise edition directly, without upgrade, with the same settings, same server, same network, and for now it seems that our problems are solved.

    We followed these instructions
    http://blogs.technet.com/b/server_core/archive/2009/10/14/upgrading-windows-server-2008-r2-without-media.aspx
    and it was BAD.
    Friday, May 27, 2011 1:16 PM
  • User-2068698782 posted
    I don't think that our trouble are version-related, but just edition-related. I think that when the sp1 will be available in the standard windows update process, we'll install it. But, we installed the lock tool to not allow ie9 to be installed. Because we are using a lot of classic asp, related to vbscript.dll, and ie9 upgrade that file, we don't want to take the risk to get troubles because of a vbscript.dll version upgrade.
    Friday, May 27, 2011 1:45 PM
  • User-1003905293 posted

    Hello ppl...

     I do not think that the solutions is to exclude (not install) any windows updates, especially security updates.

     The only update i did not install is I.E.9 that i do not need at all on a server machine!! What is the point! Useless...

    Be sure to check your code first for corrupted third party dlls, not closing database connections, not closing objects, big sql loops etc etc... IIS hangs due to resources overview or high memory consuming web applications.

    Saturday, May 28, 2011 5:08 AM
  • User-1719368054 posted

    My site at www.walkinwilliescomix.com is a Candypress.com website and it was taking 21 seconds for the homepage (which has featured products, newest products added etc.) to load on port 80 and just over 1 second on SSL port 443. Yes, I have Windows 2008 server along with IIS 7.0 and so forth.

    After reading this post, I uninstalled IE9 and lo and behold, my site works great! Thanks for the tips! I don't know if an application pool was hanging or not but it worked and that's the deal for me.

    Thanks for the help folks!

    Saturday, August 27, 2011 12:24 AM
  • User1375268994 posted

    My Windows 2008 R2 server had some trouble using XML while sending newsletter using CLASSIC ASP: the only way to (temporary) solve the problem was to reboot Windows (!!!), but quickly my website completely hung (please note, just the website/s who were using the Microsoft.XMLHTTP to GET files).

    So, reading this thread I tryed to uninstall IE9 and come back to IE8. This completely SOLVED my problem. We also have Windows full updated.

    Thank you very much to walkinwillie who first suggested this, and also to the others to helped us to find the right solution.

    ilNebbioso

    UPDATE: after rolling back to IE8, please perform some Windows Update(s) and a reboot to solve the problem.

    Thursday, December 20, 2012 6:56 PM
  • User-340250531 posted

    Thank god I found this thread!

    I've had to move an old ecommerce site to a new hosting provider and it runs the Server 2008r2 and for two weeks I've been pouring over the code to find non existent memory leaks.  It has literally stressed me so badly that my hair started to fall out. 

    How can Microsoft justify phasing out a programming language.   I've just started learning .net so eventually it will be converted, but I had to get this thing up and running without my finger on the refresh app pool all damn day.

    I cannot believe they just willy nilly decided to sneak in some code with IE to that do this to companies. 

    Saturday, April 7, 2018 6:30 AM
  • User690216013 posted

    Bewenched

    How can Microsoft justify phasing out a programming language.   I've just started learning .net so eventually it will be converted, but I had to get this thing up and running without my finger on the refresh app pool all damn day.

    The phasing out of classic ASP was revealed in 2002, when Microsoft made ASP.NET publicly available. So if you just start learning .NET in 2018, it is not Microsoft's responsibility IHMO.

    Sunday, April 8, 2018 1:41 PM
  • User2016356238 posted

    Hello

    I don't know if this helps anyone, but in the past 6 months or so our Company started to experience intermittent resource failure issues, on CreateObject calls (filesystemobject, recordsets, uploads etc), with no code changes and no explanation.

    Restarting IIS was a temporary fix, but they came back.

    On our test server we have tried to replicate the issues and worked out that Application using Application-Pools with an Identity were the only ones affected. Each time we moved them over to an Application-Pool without an Identity, the issues have not returned on them.

    So somehow the service-account resources were getting used up.

    Monday, April 1, 2019 9:35 AM