Performance Profiling .Net 1.1 Web Service

Code and memory profiling for .NET developers.

Moderators: Brian Donahue, richardjm, StephenC

Performance Profiling .Net 1.1 Web Service

Postby El Mark » Tue Apr 14, 2009 4:27 pm

I just downloaded a trial of the Profiler 4 product.

Trying to profile an ASP.Net web service for our legacy 1.1 application.
The web service is written in VB.Net, .Net 1.1.

When the Internet Explorer "test harness" loads the web service, it just says "loading page...." for around 10 minutes, then eventually times out with the following message.


Timed out waiting for a program to execute. The command being executed was "c:\\windows\\microsoft.net\\framework\\v1.1.4322\\vbc.exe" @"C:\\WINDOWS\\Microsoft.NET\\Framework\\v1.1.4322\\Temporary ASP.NET Files\\webservice1\\6e6936e0\\b476006d\\nk74wquy.cmdline".
Description: An unhandled exception occurred during compilation using the CodeDomProvider 'Microsoft.VisualBasic.VBCodeProvider'. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Runtime.InteropServices.ExternalException: Timed out waiting for a program to execute. The command being executed was "c:\\windows\\microsoft.net\\framework\\v1.1.4322\\vbc.exe" @"C:\\WINDOWS\\Microsoft.NET\\Framework\\v1.1.4322\\Temporary ASP.NET Files\\webservice1\\6e6936e0\\b476006d\\nk74wquy.cmdline".

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:


[ExternalException (0x102): Timed out waiting for a program to execute. The command being executed was "c:\\windows\\microsoft.net\\framework\\v1.1.4322\\vbc.exe" @"C:\\WINDOWS\\Microsoft.NET\\Framework\\v1.1.4322\\Temporary ASP.NET Files\\webservice1\\6e6936e0\\b476006d\\nk74wquy.cmdline".]
System.CodeDom.Compiler.Executor.ExecWaitWithCaptureUnimpersonated(IntPtr userToken, String cmd, String currentDir, TempFileCollection tempFiles, String& outputName, String& errorName, String trueCmdLine) +1563
System.CodeDom.Compiler.Executor.ExecWaitWithCapture(IntPtr userToken, String cmd, String currentDir, TempFileCollection tempFiles, String& outputName, String& errorName, String trueCmdLine) +163
System.CodeDom.Compiler.Executor.ExecWaitWithCapture(IntPtr userToken, String cmd, TempFileCollection tempFiles, String& outputName, String& errorName, String trueCmdLine) +38
System.CodeDom.Compiler.CodeCompiler.Compile(CompilerParameters options, String compilerDirectory, String compilerExe, String arguments, String& outputFile, Int32& nativeReturnValue, String trueArgs) +184
System.CodeDom.Compiler.CodeCompiler.FromFileBatch(CompilerParameters options, String[] fileNames) +548
System.CodeDom.Compiler.CodeCompiler.FromDomBatch(CompilerParameters options, CodeCompileUnit[] ea) +428
System.CodeDom.Compiler.CodeCompiler.FromDom(CompilerParameters options, CodeCompileUnit e) +90
System.CodeDom.Compiler.CodeCompiler.System.CodeDom.Compiler.ICodeCompiler.CompileAssemblyFromDom(CompilerParameters options, CodeCompileUnit e) +37
System.Web.Compilation.BaseCompiler.GetCompiledType() +231




--------------------------------------------------------------------------------
Version Information: Microsoft .NET Framework Version:1.1.4322.2407; ASP.NET Version:1.1.4322.2407



After receiving this error profiling against on our app on Windows Server 2003, I moved to an XP virtual machine. Same issue. So I created a default VB.Net web service in VS2003 with only the "hello world" function.
Same issue... the result of which is above.

thoughts?
because I'm stumped.


thanks
El Mark
 
Posts: 2
Joined: Tue Apr 14, 2009 4:18 pm

Postby Brian Donahue » Tue Apr 14, 2009 5:56 pm

Hi,

Sorry, I haven't seen ANTS Profiler cause ASP .NET to behave this way before. The error indicates that the application can't be compiled, but the odd thing I don't understand is that in ASP .NET 1.1, web applications were distributed as pre-compiled assemblies and dynamic compilation was not yet being done.

Does your web application typically try to do this, outside of Profiler? You could probably check that using Process Explorer or file monitor...
Brian Donahue
 
Posts: 6669
Joined: Mon Aug 23, 2004 10:48 am

Postby El Mark » Tue Apr 14, 2009 6:14 pm

Strange.. right?

From all of the digging I've done online today, it looks like this error happens randomly on some machines during random web service recompiles.

Whether .Net 1.1 is *supposed* to compile dynamically or not.. i know that for my tenure developing for .Net 1.1 web services, the first load is ALWAYS super slow to load because it's compiling.... something.

The issue seems to be worsened by attaching ANTS to it..

I have a work around that seems to be ok:
run every webservice you expect to profile with Ants unattached.
This will allow the "first time" compile to happen without Ants.
then run Ants to profile the app.

It's working for now.
thanks for the insights.

-Mark
El Mark
 
Posts: 2
Joined: Tue Apr 14, 2009 4:18 pm

Postby ericgrun » Fri Jul 31, 2009 8:25 pm

Just thought I should add. Was evaluating Ants Profiler 5 and experienced the same problem with .Net 1.1 applications.

Previously installed 1.1 applications would work fine, but fresh installs would time out with the same error. Stopping the Ants services did not solve the issue, was forced to uninstall the profiler to get them to work. Hoping for a better solution.
ericgrun
 
Posts: 1
Joined: Fri Jul 31, 2009 7:59 pm


Return to ANTS Profiler Previous Versions

Who is online

Users browsing this forum: No registered users and 0 guests