locked
w3wp.exe Crash IIS 8.5 Classic ASP Pages RRS feed

  • Question

  • User-887322241 posted

    Hi,

    I am struggling with the following for some time now and have tried many suggestions from various google searches.

    We have one Website running in Classic ASP on a windows server 2012 R2 using IIS 8.5

    We use the website with MySQL

    We get this happening during the day but at different times and I suspect this to be when the site gets busy or many queries. ( Not sure )

    In The Event Viewer ( Applications ) we get Active Server Pages Errors.

    When this happen the pages that tries to make queries to MySQL will just respond with Error 500 ( Internal Error )

    There are a few types of the errors and below are some

    The below error can happen for many different pages and this is just example of the last one.

    Error: File /update-project.asp  CreateObject Exception. The CreateObject of '(null)' caused exception C0000005..

    The there are also this type of Application errors. This is a example of the last one

    Faulting application name: w3wp.exe, version: 8.5.9600.16384, time stamp: 0x52157ba0

    Faulting module name: ntdll.dll, version: 6.3.9600.18895, time stamp: 0x5a4b127e

    Exception code: 0xc0000374

    Fault offset: 0x000e6214

    Faulting process id: 0x2cd0

    Faulting application start time: 0x01d3b5ffb8b88f62

    Faulting application path: C:\Windows\SysWOW64\inetsrv\w3wp.exe

    Faulting module path: C:\Windows\SYSTEM32\ntdll.dll

    Report Id: c17383f3-21f4-11e8-80f1-0cc47adae555

    Faulting package full name:

    Faulting package-relative application ID:

    I have tried changing quite a few things as suggested by other posts from the applicationpool settings, increasing the MySQL buffer size, and more.

    As soon as this happens, I do a APllicationPool Recycle and the problem goes away.

    I have download DebugDiag 2 and created a rule for the w3wp.exe process and when this happens recorded a few dump files.

    I then open the analyzer and analyze them but I do not seem to see how figure out how to read or interpret them to what could be the problem.

    Is there a way I can post or provide these dump files for someone to try and help me because I am at the point pulling my hair out.

    I look forward to any response from anyone that can help me or guide me in the right direction or even point me to try other things.

    Thanks in advance

    Thursday, March 8, 2018 2:42 PM

All replies

  • User690216013 posted

    Is there a way I can post or provide these dump files for someone to try and help me because I am at the point pulling my hair out.

    You should open a support case via http://support.microsoft.com 

    Thursday, March 8, 2018 11:59 PM
  • User-460007017 posted

    Hi HBotha_SP,

    It looks like your application is using the object that you didn't allocate. So You could try the debug diagnostic to generate dump file analysis report

    https://support.microsoft.com/en-sg/help/919789/how-to-use-the-debug-diagnostics-tool-to-troubleshoot-an-iis-process-t

    In addition, you could try the process monitor which could display the internal worker process permission issue:

    https://docs.microsoft.com/en-us/sysinternals/downloads/procmon

    Maybe your application pool identity don't have permission to access the profile or temp folder.

    Besides, have you tried to enable the 32bit application for application pool identity

    Best Regards,

    Yuk Ding

    Friday, March 9, 2018 6:05 AM
  • User-887322241 posted

    Thanks for the response Yuk,

    I have made dumpfiles using DebugDiag 2 but when I run the analyzer, I struggle to interpret what could be the fault as it is not clear to me.

    Yes my ApplicationPool does have 32bit enabled and integrade mode

    Not so sure about the Permission because it only happens now and again not all the time or regularly.

    This can be on different pages and is not always the same page.

    It works well and on random suddenly the error will appear on a page but can be any one of my asp pages and not the same necessarily.

    Below are 2 examples of how I get data en creating folders. From what I know I assume I open it correctly and close and set all to nothing. Am I missing something ?

    Here are examples of how I make a connection to MySQL and get some data and close it.

    sConnection = "DRIVER={MySQL ODBC 5.3 ANSI Driver}; SERVER=localhost; PORT=3306;" &_
    "DATABASE=accufilemain; USER=myuser; PASSWORD=mypassword; OPTION=3;"
    Set con = Server.CreateObject("ADODB.Connection")
    con.Open(sConnection)
    
    sql_check = "Select * From clients Where id = " & ClientID
    Set RS = con.Execute(sql_check)
    If Not RS.EOF Then
    
    '''Get my field values
       ValABC = RS("CustomerID")
    
    End If
    State = RS.State
    If State <> 0 Then
    	RS.Close
    	Set RS = Nothing
    End If
    
    con.Close
    Set con = Nothing

    Then here are another example of a object I use.

    sFolder1 = "C:\inetpub\wwwroot\mywebsite\files\" & ClientID
    
    Set fs=CreateObject("Scripting.FileSystemObject") 
    If Not fs.FolderExists(sFolder1) Then 
    fs.CreateFolder(sFolder1) 
    End If
    
    Set fs = nothing

    Then I also make xmlposts to get data from 3rd party API like below.

    GetURL = ""
    set objHttp = Server.CreateObject("Msxml2.ServerXMLHTTP") 
    objHttp.open "GET", "otherwebsite/api/1.1.2/Customer/Get?$skip=" & MyVAL4 & "&$top=100&apikey=" & Myapikey & "&CompanyId=" & MyCompanyId, false
    objHttp.setRequestHeader "Authorization", "Basic " & MyBase64AuthDetails 
    objHttp.setRequestHeader "Content-Type", "application/json" 
    objHttp.Send
    GetURL = objHttp.ResponseText
    
    Set objHttp = Nothing
    
    '''' Then I can search GetURL for what I need as a string.

    Does anything in the above samples look incorrect maybe that could in a lot of use cause my problem ?

    Is there a way I can provide my Result of the dump file or the dump file that could maybe give you more of an idea of what is happening ?

    Thanks you for your time and effort. I appreciate the response.

    Friday, March 9, 2018 9:51 AM
  • User-460007017 posted

    Hi Hbotha_SP,

    Did you run something like anti-virus or firewall. If they block the execution of your application, it would return the crash like that. The code seems should not return this error.

    Best Regards,

    Yuk Ding

    Tuesday, March 20, 2018 8:11 AM