[ http://jira.codehaus.org/browse/MNG-5077?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jörg Waßmer updated MNG-5077: ----------------------------- Attachment: MNG-5077-maven-model-builder.patch Attached patch. > Performance of StringSearchModelInterpolator could be much better > ----------------------------------------------------------------- > > Key: MNG-5077 > URL: http://jira.codehaus.org/browse/MNG-5077 > Project: Maven 2 & 3 > Issue Type: Improvement > Components: Inheritance and Interpolation > Affects Versions: 3.0.3 > Environment: Maven 3.0.3 trunk > Reporter: Jörg Waßmer > Priority: Minor > Attachments: MNG-5077-maven-model-builder.patch > > > Currently I am investigating performance problems with the large project > trees (100+ projects). > The main cause is the Netbeans Maven Plugin, but I also found and fixed a > bottleneck in Maven itself, in class > org.apache.maven.model.interpolation.StringSearchModelInterpolator. > I created a patch against the today's Maven 3 trunk, > https://svn.apache.org/repos/asf/maven/maven-3/trunk. > It does following: > - don't use AccessController if no SecurityManager is active. > - don't call java.lang.reflect.Field.setAccessible(false). It is not > necessary, because the Field object are never exposed to outside the class. > - getFields(Class) now determines which fields are qualified for > interpolation, instead of determining it again on each call to > traverseObjectWithParents(). > The behaviour is exactly the same as before. The performance is much better. > Formerly about 12500 ms for all projects, now about > 4500, where most of the CPU time is consumed by > StringSearchModelInterpolator.interpolateInternal(). -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira