[ https://issues.apache.org/jira/browse/SLING-2929?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Robert Munteanu updated SLING-2929: ----------------------------------- Assignee: Robert Munteanu > Wasted work in ClassDescriptor.validate() > ----------------------------------------- > > Key: SLING-2929 > URL: https://issues.apache.org/jira/browse/SLING-2929 > Project: Sling > Issue Type: Bug > Components: Maven Plugins and Archetypes > Environment: any > Reporter: Adrian Nistor > Assignee: Robert Munteanu > Labels: patch, perfomance > Attachments: patch.diff > > > The problem appears in revision 1495454. I attached a one-line patch > that fixes it. > In method "ClassDescriptor.validate", the loop over "children" should > break immediately after "valid" becomes "false". All the iterations > after "valid" becomes "false" do not perform any useful work, at best > they just set "valid" again to "false". > Method "isLive" in class "ResourceResolverContext" has a similar loop > (over "dynamicProviders"), and this loop breaks immediately after > "result" is set to "false", just like in the proposed patch. Other > methods (e.g., "FactoryPreconditions.checkPreconditions", > "JspUtil.checkAttributes", "EclipseJavaCompiler.compile", > "SecondPassVisitor.appendPageDirective") also have similar loops with > similar breaks, just like in the proposed patch. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira