System.Runtime.InteropServices.COMException (0x80070008): Not enough storage is available to process
Posted
by Darryl Braaten
on Stack Overflow
See other posts from Stack Overflow
or by Darryl Braaten
Published on 2010-03-12T19:19:56Z
Indexed on
2010/03/12
19:27 UTC
Read the original article
Hit count: 1970
I am trying to diagnose this exception.
"System.Runtime.InteropServices.COMException (0x80070008): Not enough storage is available to process this command. (Exception from HRESULT: 0x80070008)
at System.Runtime.Remoting.RemotingServices.AllocateUninitializedObject(RuntimeType objectType)
at System.Runtime.Remoting.RemotingServices.AllocateUninitializedObject(Type objectType)
at System.Runtime.Remoting.Activation.ActivationServices.CreateInstance(Type serverType)
at System.Runtime.Remoting.Activation.ActivationServices.IsCurrentContextOK(Type serverType, Object[] props, Boolean bNewObj)
at Oracle.DataAccess.Client.CThreadPool..ctor()
at Oracle.DataAccess.Client.OracleCommand.set_CommandTimeout(Int32 value)
...
It does not look like any of the normal types of "storage" have hit any limits. The application is using about 400MB of memory, 70 threads, 2000 handles and the hard drive has many GB free. The machine is running Windows 2003 Enterprise server with 16GB of RAM so memory shouldn't be an issue.
The application is running as a windows service so there are no GDI objects being used. Running out of GDI handles is a common cause of this exception.
Database connections, commands & readers are all all wrapped with using blocks so they should be getting cleaned up correctly.
© Stack Overflow or respective owner