-
Bug
-
Resolution: Duplicate
-
Critical
-
None
-
Windows
Our work areas contain huge build environments (>40G) each. Hudson becomes excessively slow after configuration operations, when the configuration contains artifact publishers. The artifact paths do contain wildcards like "dir*ectory/smthng/*/" but the resulting artifact fileset is actually very small. It seems as if the configuration makes some artifact path checks 1) over the whole workarea, using 2) slow methods.
All other operations (builds & checkouts etc.) become also slow for the duration. Repeating the configuration operations / stop/reload on GUI seems to produce more GET operations s left on the same checkArtifacts scanning, and Hudson becomes unusable.
A similar issue was mentioned here: http://hudson.361315.n4.nabble.com/Want-to-disable-file-mask-validation-150k-files-tt2256867.html#a2256867.
Here is the relevant dump of one such thread:
"Handling GET /job/jobname/descriptorByName/hudson.tasks.ArtifactArchiver/checkArtifacts : RequestHandlerThread4"
daemon prio=6 tid=0x4c421c00 nid=0x1394 runnable [0x4ec7e000]
java.lang.Thread.State: RUNNABLE
at org.apache.tools.ant.util.VectorSet.doAdd(VectorSet.java:64)
- locked <0x2d266708> (a org.apache.tools.ant.util.VectorSet)
at org.apache.tools.ant.util.VectorSet.add(VectorSet.java:45) - locked <0x2d266708> (a org.apache.tools.ant.util.VectorSet)
at org.apache.tools.ant.DirectoryScanner.processIncluded(DirectoryScanner.java:1322)
at org.apache.tools.ant.DirectoryScanner.accountForIncludedFile(DirectoryScanner.java:1280)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1233)
at org.apache.tools.ant.DirectoryScanner.accountForIncludedDir(DirectoryScanner.java:1305)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1253)
at org.apache.tools.ant.DirectoryScanner.accountForIncludedDir(DirectoryScanner.java:1305)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1253)
at org.apache.tools.ant.DirectoryScanner.accountForIncludedDir(DirectoryScanner.java:1305)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1253)
at org.apache.tools.ant.DirectoryScanner.accountForIncludedDir(DirectoryScanner.java:1305)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1253)
at org.apache.tools.ant.DirectoryScanner.accountForIncludedDir(DirectoryScanner.java:1305)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1253)
at org.apache.tools.ant.DirectoryScanner.accountForIncludedDir(DirectoryScanner.java:1305)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1253)
at org.apache.tools.ant.DirectoryScanner.accountForIncludedDir(DirectoryScanner.java:1305)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1253)
at org.apache.tools.ant.DirectoryScanner.accountForIncludedDir(DirectoryScanner.java:1305)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1253)
at org.apache.tools.ant.DirectoryScanner.accountForIncludedDir(DirectoryScanner.java:1305)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1253)
at org.apache.tools.ant.DirectoryScanner.accountForIncludedDir(DirectoryScanner.java:1305)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1253)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1184)
at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1146)
at org.apache.tools.ant.DirectoryScanner.checkIncludePatterns(DirectoryScanner.java:928)
at org.apache.tools.ant.DirectoryScanner.scan(DirectoryScanner.java:882) - locked <0x2d264738> (a org.apache.tools.ant.DirectoryScanner)
at org.apache.tools.ant.types.AbstractFileSet.getDirectoryScanner(AbstractFileSet.java:490)
at hudson.FilePath$34.hasMatch(FilePath.java:1715)
at hudson.FilePath$34.invoke(FilePath.java:1648)
at hudson.FilePath$34.invoke(FilePath.java:1615)
at hudson.FilePath.act(FilePath.java:753)
at hudson.FilePath.act(FilePath.java:735)
at hudson.FilePath.validateAntFileMask(FilePath.java:1615)
at hudson.FilePath.validateFileMask(FilePath.java:1765)
at hudson.FilePath.validateFileMask(FilePath.java:1745)
at hudson.FilePath.validateFileMask(FilePath.java:1738)
at hudson.tasks.ArtifactArchiver$DescriptorImpl.doCheckArtifacts(ArtifactArchiver.java:197)
at sun.reflect.GeneratedMethodAccessor815.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:259)
at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:126)
at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:65)
at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:79)
at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:537)
at org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:219)
at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:537)
at org.kohsuke.stapler.MetaClass$7.doDispatch(MetaClass.java:219)
at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:30)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:537)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:453)
at org.kohsuke.stapler.Stapler.service(Stapler.java:135)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
at winstone.ServletConfiguration.execute(ServletConfiguration.java:249)
at winstone.RequestDispatcher.forward(RequestDispatcher.java:335)
at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:378)
at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:94)
at net.bull.javamelody.MonitoringFilter.doFilter(MonitoringFilter.java:420)
at org.jvnet.hudson.plugins.monitoring.HudsonMonitoringFilter.doFilter(HudsonMonitoringFilter.java:43)
at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:97)
at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:86)
at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:84)
at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:51)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at org.acegisecurity.ui.basicauth.BasicProcessingFilter.doFilter(BasicProcessingFilter.java:173)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:66)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:164)
at winstone.FilterConfiguration.execute(FilterConfiguration.java:195)
at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:368)
at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
at winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:244)
at winstone.RequestHandlerThread.run(RequestHandlerThread.java:150)
at java.lang.Thread.run(Thread.java:619)
- duplicates
-
JENKINS-7214 FilePath.validateAntFileMask too slow for /configure
-
- Resolved
-
duplicate of the issue
JENKINS-7214which is fixed in Jenkins v1.484