We used to have the same exceptions in our logs as well.
We just turned off GZIPCompression at Jenkins level and everything went fine 
afterward… This is done by adding the following arguments to the Jenkins launch 
command:

-Dorg.kohsuke.stapler.compression.CompressionFilter.disabled=true


On the other hand, we also notice many more exceptions about Jenkins being 
unable to parse some of its data – something like "unable to parse date: 0"
Builds artefacts are kept in their own directory, named after the build number. 
In addition (on Unix at least), a symlink is created with the build date 
pointing to the directory where the actual build files are stored. In our case, 
we noticed that old builds didn't have any symlinks pointing to them – so they 
couldn't be accessed "by date". Hence the exceptions in the log about being 
unable to parse the build number into a date…
We simply deleted those (very) old builds, the exceptions disappeared and 
Jenkins became faster.


Hope this helps…

/Bertrand

From: David Resnick <abune...@gmail.com<mailto:abune...@gmail.com>>
Reply-To: 
"jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com>" 
<jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com>>
Date: Wednesday 24 October 2012 07:21
To: "jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com>" 
<jenkinsci-users@googlegroups.com<mailto:jenkinsci-users@googlegroups.com>>
Subject: Re: Very long load time for main dashboard since 1.486

Thanks!

I was hoping for some attention by core developers to this thread, but I think 
you have made the next right step.

- David

On Tuesday, October 23, 2012 3:07:29 PM UTC+2, jcsirot wrote:
Hi David,

I opened a ticket in Jenkins JIRA:

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

Feel free to add details or comments to complete my short description of the 
issue.

--
J.-C. Sirot

Le mardi 23 octobre 2012 12:54:47 UTC+2, David Resnick a écrit :
Hi Jean-Christophe,

I can confirm that I have similar exceptions in my log too (you can find a 
sample at http://pastebin.com/NEXWMMa3 ). I am not able though to correlate the 
exceptions with the long loading times. Right now my main dashboard loads very 
quickly (with a Jenkins instance that has been up for over 5 days).

- David

On Tuesday, October 23, 2012 10:40:58 AM UTC+2, jcsirot wrote:
Helle David,

I'm facing the same issue too.

Looking at the log I noticed this exception. I don't know if it is linked but 
after this exception has been printed in the log trail the dashboard loads 
immediately.
Did someone have any unexpected exception in the log file?

Oct 22, 2012 6:53:59 PM org.kohsuke.stapler.compression.CompressionFilter 
reportException
WARNING: Untrapped servlet exception
winstone.ClientSocketException: Failed to write to client
        at winstone.ClientOutputStream.write(ClientOutputStream.java:41)
        at winstone.WinstoneOutputStream.commit(WinstoneOutputStream.java:181)
        at winstone.WinstoneOutputStream.flush(WinstoneOutputStream.java:219)
        at winstone.WinstoneOutputStream.close(WinstoneOutputStream.java:229)
        at 
java.util.zip.DeflaterOutputStream.close(DeflaterOutputStream.java:149)
        at 
org.kohsuke.stapler.compression.FilterServletOutputStream.close(FilterServletOutputStream.java:36)
        at java.io.FilterOutputStream.close(FilterOutputStream.java:143)
        at sun.nio.cs.StreamEncoder.implClose(StreamEncoder.java:301)
        at sun.nio.cs.StreamEncoder.close(StreamEncoder.java:130)
        at java.io.OutputStreamWriter.close(OutputStreamWriter.java:216)
        at java.io.BufferedWriter.close(BufferedWriter.java:248)
        at org.dom4j.io.XMLWriter.close(XMLWriter.java:286)
        at 
org.kohsuke.stapler.jelly.HTMLWriterOutput.close(HTMLWriterOutput.java:70)
        at 
org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:56)
        at 
org.kohsuke.stapler.jelly.JellyClassTearOff.serveIndexJelly(JellyClassTearOff.java:107)
        at 
org.kohsuke.stapler.jelly.JellyFacet.handleIndexRequest(JellyFacet.java:127)
        at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:563)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
        at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:625)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:659)
        at org.kohsuke.stapler.Stapler.invoke(Stapler.java:488)
        at org.kohsuke.stapler.Stapler.service(Stapler.java:162)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:45)
        at winstone.ServletConfiguration.execute(ServletConfiguration.java:248)
        at winstone.RequestDispatcher.forward(RequestDispatcher.java:333)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:376)
        at 
hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:95)
        at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:87)
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
        at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:47)
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
        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 jenkins.security.ApiTokenFilter.doFilter(ApiTokenFilter.java:63)
        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:194)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
        at 
org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:50)
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
        at 
hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
        at winstone.FilterConfiguration.execute(FilterConfiguration.java:194)
        at winstone.RequestDispatcher.doFilter(RequestDispatcher.java:366)
        at winstone.RequestDispatcher.forward(RequestDispatcher.java:331)
        at 
winstone.RequestHandlerThread.processRequest(RequestHandlerThread.java:215)
        at winstone.RequestHandlerThread.run(RequestHandlerThread.java:138)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
        at java.util.concurrent.FutureTask.run(FutureTask.java:138)
        at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.net.SocketException: Broken pipe
        at java.net.SocketOutputStream.socketWrite0(Native Method)
        at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
        at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
        at winstone.ClientOutputStream.write(ClientOutputStream.java:39)
        ... 70 more

--
Jean-Christophe Sirot

Le dimanche 21 octobre 2012 11:52:13 UTC+2, David Resnick a écrit :
Since upgrading to 1.486 I've noticed long load times for some views on our 
Jenkins instance. Longest load times are for the main dashboard (which includes 
over 100 jobs and thousands of builds) -- I just timed 4 minutes 45 seconds for 
the page to load. Note that all pages do load eventually.

Has anyone else encountered this regression?

- David

Reply via email to