This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 125082

Summary: cumulative memory leak in javax.faces.FactoryFinder.applicationMaps
Product: obsolete Reporter: Quy Nguyen <quynguyen>
Component: visualwebAssignee: Winston Prakash <wjprakash>
Status: RESOLVED FIXED    
Severity: blocker Keywords: PERFORMANCE
Priority: P2    
Version: 6.x   
Hardware: All   
OS: All   
Issue Type: DEFECT Exception Reporter:
Bug Depends on:    
Bug Blocks: 123530    

Description Quy Nguyen 2008-01-11 02:07:58 UTC
Component-related instances in the com.sun.webui.jsf.* packages accumulate in the FactoryFinder.applicationMaps table. 
Some other objects from jsfsupport (RaveServletContext, RaveRenderKit, DesigntimeViewHandler, etc.) leak as well.

To reproduce:
* Close the navigator and ensure that the Outline does not appear

1) Create a vw project
2) Drop a component onto the page
3) Clean-build
4) Close the project
5) Repeat steps 1-5 as needed
6) Open/close the properties window (avoid a separate memory leak)

Every time steps 1-4 are executed, the number of objects in the static FactoryFinder map increases.  The objects appear
to never get removed from the map.
Comment 1 Winston Prakash 2008-01-16 23:58:07 UTC
The FactoryFinder is part of JSF RI Implementations.
I noticed the method FactoryFinder.releaseFactories().
Probably we should try that at FacesContainer.destroy()
method and see if the applicationMaps are released.
Comment 2 Jayashri Visvanathan 2008-01-19 00:50:52 UTC
Quy,
  This issue seems to be a duplicate of 125081. If you agree, can you close this please ?
thanks
Comment 3 Quy Nguyen 2008-01-19 00:57:00 UTC
The memory leak here may cause a leak of classloader objects (from Issue 125081) but it is a separate issue.
Comment 4 Winston Prakash 2008-02-04 15:21:27 UTC
Now calling FactoryFinder.releaseFactories() to release the factories 
at FacesContainer.destroy()