Change By: Alexandru Gheorghe (01/Oct/14 9:12 PM)
Summary: Performance of Blame  svn  SVN  plugin is very poor
Description: See  this  JENKINS-20078  issue for details :

https://issues
. jenkins-ci.org/browse/JENKINS-20078

Blame svn plugin calls hudson.model.User.getProjects(User.java:479) for all User projects but should call only for upstream projects of a given job. This cause serious performance issue

{noformat}
at java.lang.Character.toUpperCase(Unknown Source)
         at java.lang.Character.toUpperCase(Unknown Source)
         at java.lang.String$CaseInsensitiveComparator.compare(Unknown Source)
         at java.lang.String$CaseInsensitiveComparator.compare(Unknown Source)
         at java.lang.String.compareToIgnoreCase(Unknown Source)
         at hudson.model.User$1.compare(User.java:415)
         at hudson.model.User$1.compare(User.java:413)
         at java.util.TimSort.mergeHi(Unknown Source)
         at java.util.TimSort.mergeAt(Unknown Source)
         at java.util.TimSort.mergeForceCollapse(Unknown Source)
         at java.util.TimSort.sort(Unknown Source)
         at java.util.TimSort.sort(Unknown Source)
         at java.util.Arrays.sort(Unknown Source)
         at java.util.Collections.sort(Unknown Source)
         at hudson.model.User.getAll(User.java:413)
         at hudson.model.User$FullNameIdResolver.resolveCanonicalId(User.java:768)
         at hudson.model.User.get(User.java:327)
         at hudson.model.User.get(User.java:300)
         at hudson.model.User.get(User.java:369)
         at hudson.scm.SubversionChangeLogSet$LogEntry.setUser(SubversionChangeLogSet.java:267)
         at sun.reflect.GeneratedMethodAccessor56595.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at org.apache.commons.beanutils.PropertyUtilsBean.invokeMethod(PropertyUtilsBean.java:2170)
         at org.apache.commons.beanutils.PropertyUtilsBean.setSimpleProperty(PropertyUtilsBean.java:2151)
         at org.apache.commons.beanutils.PropertyUtilsBean.setNestedProperty(PropertyUtilsBean.java:1957)
         at org.apache.commons.beanutils.PropertyUtilsBean.setProperty(PropertyUtilsBean.java:2064)
         at org.apache.commons.beanutils.BeanUtilsBean.setProperty(BeanUtilsBean.java:1017)
         at org.apache.commons.beanutils.BeanUtils.setProperty(BeanUtils.java:456)
         at org.apache.commons.digester.BeanPropertySetterRule.end(BeanPropertySetterRule.java:202)
         at org.apache.commons.digester.Digester.endElement(Digester.java:1345)
         at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)
         at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)
         at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(Unknown Source)
         at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source)
         at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
         at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
         at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(Unknown Source)
         at org.apache.commons.digester.Digester.parse(Digester.java:1871)
         at hudson.scm.SubversionChangeLogParser.parse(SubversionChangeLogParser.java:76)
         at hudson.scm.SubversionChangeLogParser.parse(SubversionChangeLogParser.java:43)
         at hudson.model.AbstractBuild.calcChangeSet(AbstractBuild.java:922)
         at hudson.model.AbstractBuild.getChangeSet(AbstractBuild.java:896)
         at hudson.model.AbstractBuild.hasParticipant(AbstractBuild.java:454)
         at hudson.model.AbstractProject.hasParticipant(AbstractProject.java:1644)
         at hudson.model.User.getProjects(User.java:479)
         at hudson.scm.BlameSubversionMailAddressResolverImpl.findMailAddressFor(BlameSubversionMailAddressResolverImpl.java:23)
         at hudson.tasks.MailAddressResolver.resolve(MailAddressResolver.java:112)
         at hudson.tasks.Mailer$UserProperty.getAddress(Mailer.java:547)
         at hudson.plugins.emailext.EmailRecipientUtils.getUserConfiguredEmail(EmailRecipientUtils.java:110)
         at hudson.plugins.emailext.plugins.recipients.CulpritsRecipientProvider.addRecipients(CulpritsRecipientProvider.java:41)
         at hudson.plugins.emailext.ExtendedEmailPublisher.createMail(ExtendedEmailPublisher.java:516)
         at hudson.plugins.emailext.ExtendedEmailPublisher.sendMail(ExtendedEmailPublisher.java:290)
         at hudson.plugins.emailext.ExtendedEmailPublisher._perform(ExtendedEmailPublisher.java:281)
         at hudson.plugins.emailext.ExtendedEmailPublisher.access$100(ExtendedEmailPublisher.java:79)
         at hudson.plugins.emailext.ExtendedEmailPublisher$1.endBuild(ExtendedEmailPublisher.java:689)
         at hudson.matrix.MatrixBuild$MatrixBuildExecution.post2(MatrixBuild.java:403)
         at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:725)
         at hudson.model.Run.execute(Run.java:1709)
         at hudson.matrix.MatrixBuild.run(MatrixBuild.java:304)
         at hudson.model.ResourceController.execute(ResourceController.java:88)
         at hudson.model.Executor.run(Executor.java:231)
         at hudson.model.OneOffExecutor.run(OneOffExecutor.java:43)
{noformat}
Priority: Blocker Major
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

--
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to