You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by ji...@codehaus.org on 2003/06/16 00:40:54 UTC

[jira] Commented: (MAVEN-472) Reactor uses a huge amount of memory per project

The following comment has been added to this issue:

     Author: Brett Porter
    Created: Sun, 15 Jun 2003 5:39 PM
       Body:
I've done some research on this. It seems POM interpolation has some effect, but is not the majority of the memory leaked.

eg. I have a 5 project build that gets up to 23M consistently under CVS HEAD. If I comment out project = getJellyProject(project), and change all my POM interpolated values to constants, It still gets up to 21M consistently.
I've tried to make the numbers more consistent by doing a runtime.gc() before The reactor memory call.

Now, checking memory at other intervals, I have determined the ~3M that is allocated is all by loadPlugin. It seems that the plugin projects are not being let go of at the end of a project.

Is it really necessary to be reloading all the plugin projects for each project? This has the chain effect of loading other plugin projects.

I couldn't find the dangling references - I suspected project.setContext(context); context.setProject(project) - but I recursively nulled them out after the end of each reactor project and it didn't help.

I've also found that the loadedPlugins variable in the PluginManager is a little strange - using strings to key plugin + project. I thought it might be more appropriate to have a map of loaded plugins inside the project itself.

I will continue to research this - I will need to do some more heap inspection to track down what is holding on to the references, but it doesn't appear to be a trivial fix.
---------------------------------------------------------------------
View the issue:

  http://jira.codehaus.org/secure/ViewIssue.jspa?key=MAVEN-472


Here is an overview of the issue:
---------------------------------------------------------------------
        Key: MAVEN-472
    Summary: Reactor uses a huge amount of memory per project
       Type: Bug

     Status: Unassigned
   Priority: Major

 Time Spent: Unknown
   Estimate: 0 minutes

    Project: maven
 Components: 
             core
   Versions:
             1.0-beta-10

   Assignee: 
   Reporter: Ben Walding

    Created: Tue, 10 Jun 2003 6:37 PM
    Updated: Tue, 10 Jun 2003 6:39 PM

Description:
The reactor uses around 3 - 5M for each project it reactors through.  This adds up if you have a behemoth like VM's 300 project build.

The temporary "solution" is to increase the amount of memory for the JVM. However this will not be sufficient for huge builds.  The long term solution is to find out what the reactor is keeping references to.

Jason seems to think it is to do with interpolation.


---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/Administrators.jspa

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org