Exception of type 'System.OutOfMemoryException' was thrown
There's another thread that talks about this problem, but it seems to have run dead so I'd like to bring this up again.
This morning we were working on our Sitefinity site, on the master pages in particular. We were struggling to disable the CSS files rendered out by the Telerik controls, but we eventually figured it out.
Then we moved our theme files into the new folder structure under App_data as suggested by Telerik. We followed the instructions to configure the new theme under the administration section, created a new template and applied the new theme to the template.
Everything worked well, but then suddenly the application started crashing. We monitored the server memory and noticed a serious problem with the worker process memory consumption. From the rate at which it swallows up memory (up to 2Gb within 5-10 seconds) it would seem like some kind of infinite loop. What doesn't make sense though is why?
The Sitefinity and Windows event log list the following:
----------------------------------------
Timestamp:
1
/
20
/
2012
11:
13:
36
AM
Message: HandlingInstanceID: a
67013
be
-427
c
-41
a
3
-ba
8
e
-638010
c
08247
An exception of type
'System.OutOfMemoryException'
occurred and was caught.
---------------------------------------------------------------------------
01
/
20
/
2012
13:
13:
36
Type : System.OutOfMemoryException, mscorlib, Version=
4.0
.
0.0
, Culture=neutral, PublicKeyToken=b
77
a
5
c
561934
e
089
Message : Exception of type
'System.OutOfMemoryException'
was thrown.
Source : mscorlib
Help link :
Data : System.Collections.ListDictionaryInternal
TargetSite : Void set_Capacity(Int
32
)
Stack Trace : at System.Collections.Generic.List`
1
.set_Capacity(Int
32
value)
at System.Collections.Generic.List`
1
.Add(T item)
at Telerik.Sitefinity.Modules.Pages.PageHelper.GetTemplates(PageNode pageNode)
at Telerik.Sitefinity.Web.PageSiteNode.LoadPageData()
at Telerik.Sitefinity.Web.PageSiteNode.get_Visible()
at Telerik.Sitefinity.Web.RouteHelper.CheckSiteMapNode(SiteMapNode pageSiteMapNode)
at Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.FilterNodes(SiteMapNodeCollection nodes, Boolean modifyCollection)
at Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.Helper.FilterChildNodes(SiteMapNode node, SitefinitySiteMapDataSource dataSource)
at Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.InnerPageSiteNode.get_ChildNodes()
at Telerik.Sitefinity.Web.RouteHelper.CheckGroupSiteMapNode(PageSiteNode node)
at Telerik.Sitefinity.Web.RouteHelper.CheckSiteMapNode(SiteMapNode pageSiteMapNode)
at Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.FilterNodes(SiteMapNodeCollection nodes, Boolean modifyCollection)
at Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.Helper.FilterChildNodes(SiteMapNode node, SitefinitySiteMapDataSource dataSource)
at Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.InnerPageSiteNode.get_ChildNodes()
at Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.GetNodes(SiteMapNode node)
at Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.GetPathNodeCollection(String viewPath)
at Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.GetView(String viewName)
at System.Web.UI.WebControls.DataBoundControl.ConnectToDataSourceView()
at System.Web.UI.WebControls.DataBoundControl.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.AddedControl(Control control, Int
32
index)
at System.Web.UI.Control.EnsureChildControls()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Control.PreRenderRecursiveInternal()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Additional Info:
MachineName : MyMachine
TimeStamp :
1
/
20
/
2012
11:
13:
36
AM
FullName : Telerik.Sitefinity.Utilities, Version=
4.3
.
1885.0
, Culture=neutral, PublicKeyToken=b
28
c
218413
bdf
563
AppDomainName : /LM/W
3
SVC/
17
/ROOT
-1
-129715315386278148
ThreadIdentity : Anonymous
WindowsIdentity : NT AUTHORITY\NETWORK SERVICE
Requested URL : http://staging.domain.com/
Category: ErrorLog
Priority:
0
EventId:
90000
Severity: Error
Title:Enterprise Library Exception Handling
Machine: YODA
App Domain: /LM/W
3
SVC/
17
/ROOT
-1
-129715315386278148
ProcessId:
8940
Process Name: c:\windows\system
32
\inetsrv\w
3
wp.exe
Thread Name:
Win
32
ThreadId:
7756
Extended Properties:
----------------------------------------
Hello,
It seems that we have the same kind of error than you !
[OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.]
System.Collections.Generic.List`1.set_Capacity(Int32 value) +62
System.Collections.Generic.List`1.EnsureCapacity(Int32 min) +34
System.Collections.Generic.List`1.Add(T item) +54
Telerik.Sitefinity.Modules.Pages.PageHelperImplementation.GetTemplates(PageNode pageNode) +66
Telerik.Sitefinity.Web.PageSiteNode.LoadPageData() +579
Telerik.Sitefinity.Web.PageSiteNode.get_Visible() +9
Telerik.Sitefinity.Web.UI.NavigationControls.InnerPageSiteNode.get_Visible() +18
Telerik.Sitefinity.Web.RouteHelper.CheckSiteMapNode(SiteMapNode pageSiteMapNode) +298
Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.CheckNode(SiteMapNode node) +68
Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.FilterNodes(SiteMapNodeCollection nodes, Boolean modifyCollection) +373
Telerik.Sitefinity.Web.UI.NavigationControls.Helper.FilterChildNodes(SiteMapNode node, SitefinitySiteMapDataSource dataSource) +325
Telerik.Sitefinity.Web.UI.NavigationControls.InnerPageSiteNode.get_ChildNodes() +29
Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.GetNodes(SiteMapNode node) +68
Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.GetNodes() +352
Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.GetPathNodeCollection(String viewPath) +46
Telerik.Sitefinity.Web.UI.NavigationControls.SitefinitySiteMapDataSource.GetView(String viewName) +40
System.Web.UI.WebControls.SiteMapDataSource.System.Web.UI.IDataSource.GetView(String viewName) +10
System.Web.UI.WebControls.ReadOnlyDataSource.System.Web.UI.IDataSource.GetView(String viewName) +8809165
System.Web.UI.WebControls.DataBoundControl.ConnectToDataSourceView() +266
System.Web.UI.WebControls.DataBoundControl.OnLoad(EventArgs e) +19
System.Web.UI.Control.LoadRecursive() +74
System.Web.UI.Control.LoadRecursive() +146
System.Web.UI.Control.LoadRecursive() +146
System.Web.UI.Control.LoadRecursive() +146
System.Web.UI.Control.LoadRecursive() +146
System.Web.UI.Control.AddedControl(Control control, Int32 index) +9041218
System.Web.UI.ControlCollection.Add(Control child) +79
Telerik.Sitefinity.Web.UI.SimpleView.CreateChildControls() +96
System.Web.UI.Control.EnsureChildControls() +102
System.Web.UI.Control.PreRenderRecursiveInternal() +42
System.Web.UI.Control.PreRenderRecursiveInternal() +175
System.Web.UI.Control.PreRenderRecursiveInternal() +175
System.Web.UI.Control.PreRenderRecursiveInternal() +175
System.Web.UI.Control.PreRenderRecursiveInternal() +175
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2496
Hi,
Hi Stanislav,
The duplicate template seems to have been the problem. It never occurred to me that even though the front end was bombing out within a few seconds that the back end would still work, but it did.
Thanks for the help.
Jacques