IIS hanging in ASP.Net/Component Services

  • Thread starter Thread starter Jim
  • Start date Start date
J

Jim

We are experiencing a problem with component services in .Net and IIS. We
use component services to handle transactions against SQL Server. At some
point of usage, IIS will hang up and the lowest level in the stack trace is
at System.EnterpriseServices.Thunk.Proxy.CoCreateObject and also sometimes
at System.EnterpriseServices.Thunk.Proxy.RevokeObject. Each thread that
comes in after this gets stuck in the same spot and IIS is hung at that
point and requires us to restart IIS. No exceptions are thrown; the threads
are simply hung up. Looking at SQL Server Enterprise Manager, it does not
look like there is a deadlock in SQL Server so that can be ruled out. Its
almost like COM+ is getting hung up when the objects need created or
remoting communications are blocked.

Here is a partial call stack displaying when it wa stuck at
System.EnterpriseServices.Thunk.Proxy.RevokeObject:
system.enterpriseservices.thunk.dll!System.EnterpriseServices.Thunk.Proxy.Re
vokeObject(int cookie) + 0x80 bytes

system.enterpriseservices.dll!System.EnterpriseServices.ServicedComponentPro
xy.CleanupQueues(bool bGit) + 0x5f bytes

system.enterpriseservices.dll!System.EnterpriseServices.ServicedComponentPro
xyAttribute.CreateInstance(System.Type serverType) + 0x3b bytes

mscorlib.dll!System.Runtime.Remoting.Activation.ActivationServices.IsCurrent
ContextOK(System.Type serverType, System.Object[] props, bool bNewObj) +
0x4b bytes


When this happens the CPU is not at 100% so this is like a wait state thats
blocking the execution of Component Services methods.

Anyone have any ideas of what's going on?

Thanks,
-Jim
 
Hello Jim!
Have you ever found a solution to the IIS hanging problem, which would
produce a following call stack:

at System.Runtime.InteropServices.Marshal.ThrowExceptionForHR(Int32
errorCode, IntPtr errorInfo)
at System.EnterpriseServices.Thunk.Proxy.RevokeObject(Int32 cookie)
at System.EnterpriseServices.ServicedComponentProxy.CleanupQueues(Boolean
bGit)
at System.EnterpriseServices.ServicedComponentProxyAttribute.CreateInstance(Type
serverType)
at System.Runtime.Remoting.Activation.ActivationServices.IsCurrentContextOK(Type
serverType, Object[] props, Boolean bNewObj)


We encountered a similar issue, same call stack, which is very hard to
reproduce. The only difference is that in our case IIS does not hang.
ASP
Page pukes with E_ENVALIDARG with "parameter is incorrect" message.
Please let me know.

Boris
 
Boris,

If your server is crashing or hanging you might want to
download our ReJuvin8 tool. It's free for the first
15-days. It can keep your site running despite problems.

It's designed to detect problems then restart or reboot.
It can restart ANY programs, services, or processes in
precise order. It doesn't fix bugs but it does give you some
breathing room while you are finding them. ReJuvin8 also
gives you email and telephone alert messages and graphic
status reports. It runs as a Windows Service.

It can also test, alert, and report on URLs running anywhere
on any server on your net connection. So if you use multiple
servers you can use them to watch each other, too.

ReJuvin8 has both an automatic and a custom mode. In the
auto mode you make all the settings by pointing and
clicking. This will handle most applications.

The custom mode uses heartbeat synch files to get absolute
detection that key processes are working. Tools and
instructions are provided to help you do this. We also offer
customization as a contract service.

Charles


Get ReJuvin8 at: http://www.rejuvin8.net?ac=ch1


Boris Partensky said:
Hello Jim!
Have you ever found a solution to the IIS hanging problem, which would
produce a following call stack:

at System.Runtime.InteropServices.Marshal.ThrowExceptionForHR(Int32
errorCode, IntPtr errorInfo)
at System.EnterpriseServices.Thunk.Proxy.RevokeObject(Int32 cookie)
at System.EnterpriseServices.ServicedComponentProxy.CleanupQueues(Boolean
System.EnterpriseServices.ServicedComponentProxyAttribute.CreateInstance(Typ
e
serverType)
at
System.Runtime.Remoting.Activation.ActivationServices.IsCurrentContextOK(Typ
e
serverType, Object[] props, Boolean bNewObj)


We encountered a similar issue, same call stack, which is very hard to
reproduce. The only difference is that in our case IIS does not hang.
ASP
Page pukes with E_ENVALIDARG with "parameter is incorrect" message.
Please let me know.

Boris
 
Back
Top