I don't the captures anymore but I do remember PortletWindowAccessor taking up over 20% of the heap. I posted a link to screenshot in one of the comments that shows what it looked like prior to the changes.
-scott > -----Original Message----- > From: Vitaly Baranovsky [mailto:[EMAIL PROTECTED] > Sent: Wednesday, November 07, 2007 3:41 PM > To: Jetspeed Developers List > Subject: Re: high memory consumption, possible fix > > Great, Scott! > > Weaver, do you have information about memory usage before changes to > the PortletWindowAccessor? > > 2007/11/7, Weaver, Scott <[EMAIL PROTECTED]>: > > The results are looking very positive with just the change to the > PortletWindowAccessor. > > > > Load Configuration: Using 20 individual users (actual different user > names) and 40 threads (simultaneous users) ending up with a total of > 60,000 requests over a period of about 10 minutes. > > > > JMeter Summary: > > - Thread Group: 40 Threads, 0 ramp up, Loop count 3000 > > - Loop Control: Loop Count 20 > > - CSV Data Config: 20 individual users > > > > Max memory usage during the test: 480MB > > Memory usage after GC: 306MB > > > > The baseline RAM usage after GC always seems to be between 275MB and > 315MB. > > > > I will try to get a screenshot of the top objects posted to the Jira > issue soon. > > > > -scott > > > > > > > -----Original Message----- > > > From: Weaver, Scott [mailto:[EMAIL PROTECTED] > > > Sent: Wednesday, November 07, 2007 9:25 AM > > > To: Jetspeed Developers List > > > Subject: RE: high memory consumption, possible fix > > > > > > Hi Joachim, > > > > > > You may also be interested in JS2-800 and JS-801 both of which deal > with > > > memory leaks. Do you happen to have any profiling statistics of the > JVM > > > around the time it goes OOM? What type of load are you testing with? > > > > > > I already have fixed JS2-800 (still need to commit) and I am going to > try > > > to work on JS2-801 here soon. > > > > > > -scott > > > > > > > -----Original Message----- > > > > From: Joachim Müller [mailto:[EMAIL PROTECTED] > > > > Sent: Tuesday, November 06, 2007 3:59 PM > > > > To: [email protected] > > > > Subject: high memory consumption, possible fix > > > > > > > > Hi all, > > > > > > > > we are experiencing very high memory consumption on a system based > on > > > > Jetspeed 2.1 under very high load. (OutOfMemory within a couple of > > > > minutes) > > > > > > > > There are 2 fix that are proposed to us. First addresses the > decoupling > > > > of the PortletContent from all ContentFragments of a page in > > > > CleanupValveImpl: > > > > > > > > ((ContentFragment)fragment).setPortletContent(null); > > > > > > > > > > > > The second fix addresses the release of all attributes from velocity > > > > context incl. removing cycling references in the > > > > JetspeedVelocityViewServlet (service method): > > > > > > > > ... > > > > Context ctx = (Context) > > > renderRequest.getAttribute(VELOCITY_CONTEXT_ATTR); > > > > > > > > renderRequest.removeAttribute(VELOCITY_CONTEXT_ATTR); > > > > > > > > renderRequest.removeAttribute(PortalReservedParameters.JETSPEED_POWER_TOOL > > > > _REQ_ATTRIBUTE); > > > > > > > > JetspeedVelocityPowerTool jpt = (JetspeedVelocityPowerTool) > > > > ctx.get(JETSPEED_TOOL_VAR_NAME); > > > > > > > > if (jpt!=null){ > > > > jpt.setVelocityContext(null); > > > > ctx.remove(JETSPEED_TOOL_VAR_NAME); > > > > } > > > > > > > > Object[] keys = ctx.getKeys(); > > > > //Delete all attributes > > > > for (int i = 0; i < keys.length; i++) { > > > > ctx.remove(keys[i]); > > > > } > > > > ... > > > > > > > > (already adapted to 2.1.2) > > > > > > > > > > > > Since this is kind of rough I would like to discuss this with the > > > > developer list. > > > > > > > > I also know, that Scott was working on replacing the standard > hashmap > > > > caching in org.apache.jetspeed.profiler.impl.JetspeedProfilerImpl > and > > > > org.apache.jetspeed.container.window.impl.PortletWindowAccessorImpl. > > > > Scott, can you already share some of your results? > > > > > > > > Best regards, > > > > Joachim > > > > > > > > -------------------------------------------------------------------- > - > > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > For additional commands, e-mail: jetspeed-dev- > [EMAIL PROTECTED] > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > -- > With best regards, > Vitaly Baranovsky > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
