Error when checking the "Kept in memory only by disposed obj
jasolution
Posts: 14 Bronze 2
When profiling an asp.net website hosted in IIS, when I check the box under Common Leak Indicators called "Kept in memory only by disposed objects", I get this pop up error and the output will not display:
Specified argument was out of the range of valid values.Parameter name: identifier
System.ArgumentOutOfRangeException
at dq.ObjectWithIdentifier(Int32 identifier)
at bv.b()
at bv.a()
at bv.get_ConnectedToRootStrong()
at bq.get_ConnectedToStrongRoots()
at bc.get_ConnectedToStrongRoots()
at cX.Select(IGraphAnalysis analysis, IComparisonAnalysis comparison)
at cx.Select(IGraphAnalysis analysis, IComparisonAnalysis comparison)
at cW.Select(IGraphAnalysis analysis, IComparisonAnalysis comparison)
at ct.Select(IGraphAnalysis analysis, ISnapshotComparison comparison)
at RedGate.Memory.Controller.ControllerState.ControllerState.get_FilteredCurrentObjects()
at RedGate.Memory.Controller.ControllerState.ControllerState.get_CategorisedCurrentObjects()
at i.get_CategorisedCurrentObjects()
at N.a()
at N.b(Object , GenericEventArgs`1 )
at System.EventHandler`1.Invoke(Object sender, TEventArgs e)
at i.a(StateUpdateType )
at i.set_FilterPanelState(IFilterPanelState value)
at w.a(Object , GenericEventArgs`1 )
at W.<>c__DisplayClass3.<.ctor>b__1()
at O.b()
This is running on a fully patched 32-bit Windows 2003 Server machine with ample RAM and free disk space available.
Specified argument was out of the range of valid values.Parameter name: identifier
System.ArgumentOutOfRangeException
at dq.ObjectWithIdentifier(Int32 identifier)
at bv.b()
at bv.a()
at bv.get_ConnectedToRootStrong()
at bq.get_ConnectedToStrongRoots()
at bc.get_ConnectedToStrongRoots()
at cX.Select(IGraphAnalysis analysis, IComparisonAnalysis comparison)
at cx.Select(IGraphAnalysis analysis, IComparisonAnalysis comparison)
at cW.Select(IGraphAnalysis analysis, IComparisonAnalysis comparison)
at ct.Select(IGraphAnalysis analysis, ISnapshotComparison comparison)
at RedGate.Memory.Controller.ControllerState.ControllerState.get_FilteredCurrentObjects()
at RedGate.Memory.Controller.ControllerState.ControllerState.get_CategorisedCurrentObjects()
at i.get_CategorisedCurrentObjects()
at N.a()
at N.b(Object , GenericEventArgs`1 )
at System.EventHandler`1.Invoke(Object sender, TEventArgs e)
at i.a(StateUpdateType )
at i.set_FilterPanelState(IFilterPanelState value)
at w.a(Object , GenericEventArgs`1 )
at W.<>c__DisplayClass3.<.ctor>b__1()
at O.b()
This is running on a fully patched 32-bit Windows 2003 Server machine with ample RAM and free disk space available.
Comments
I believe this could also be a symptom of ASP .NET's specialized multithreaded garbage collection disposing some .NET objects behind Profiler's back. Disabling "serverGC" should get memory profiling working for you. Please see http://support.microsoft.com/kb/911716 for the instructions on how to turn it off.
Running against IIS on port 80
setting gcServer="false" did not seem to help
Cheers