Closed timja closed 7 years ago
Error message seems to be incomplete: at javtainFreshBeanFactory
I suspect this is just a result of a client disconnecting before the server has finished writing (for example when the user presses 'X' button on the browser while the page is loading.)
We've changed the gzip library and so it must have changed the failure mode. We try to swallow this kind of error since it's not useful.
Double checking now.
Looking at DeflaterOutputStream, it's clear that this is not a result of a failed write to the nested OutputStream. Java port of zlib is encourintering a problem, but unfortunately the code doesn't report the error code.
I'm going to patch the code so that we can see what is causing it.
It's unlikely that this is related to the upgrade. The problem presumably happens with any version of Jenkins that uses jzlib, and possibly affected only by the pattern of OutputStream.write()/flush() calls.
"Freestyle project" -> "OK" - hangs forever " class="issue-link" data-issue-key="JENKINS-20114">JENKINS-20114, while unrelated, has the same stack trace in its report.
I filed https://github.com/ymnk/jzlib/pull/11 to better understand the problem.
This appears to be a problem in jzlib and not a regression in LTS.
As such, I'm targeting this for the main line, and I'm not going to block LTS releases because of this.
maybe it's failing to recover gracefully in case the wrapped OutputStream starts throwing IOException?
Code changed in jenkins
User: Kohsuke Kawaguchi
Path:
changelog.html
core/pom.xml
http://jenkins-ci.org/commit/jenkins/06bdbed5c45ad6cbfc32c1b554142f542e33c3d6
Log:
JENKINS-20618
Added a patched version of jzlib from
https://github.com/kohsuke/jzlib/tree/jzlib-1.1.3-kohsuke-1 to better
understand the deflate problem.
Integrated in jenkins_main_trunk #3068
JENKINS-20618 (Revision 06bdbed5c45ad6cbfc32c1b554142f542e33c3d6)
Result = SUCCESS
kohsuke : 06bdbed5c45ad6cbfc32c1b554142f542e33c3d6
Files :
ymnk:
https://github.com/ymnk/jzlib/pull/11 has been merged to jzlib's master branch.
Is that exception "failed to deflate" easily reproducible?
Is there a way I can flush cached/compiled jelly on a running Jenkins without restarting the server?
@jieryn try a System.gc(); JellyClassLoaderTearOff.taglibs is a WeakReference so if this is in fact what keeps compiled Jelly scripts (which I am not sure of), that could work to flush it.
Code changed in jenkins
User: Jesse Glick
Path:
core/pom.xml
http://jenkins-ci.org/commit/jenkins/2ae83f6ab099d46d01a2f70c77be069d3050267d
Log:
Corrected a (now-)misleading comment.
JENKINS-20618 diagnostics (also in 1.532.2) are on top of jzlib 1.1.3.
I have the same problem on 1.554.1, some time (maybe the first request after a restart) the home page take a long time to load and in log I see a stacktrace related to deflate (see attached file: stacktrace.txt)
Try running with -Dorg.kohsuke.stapler.jelly.DefaultScriptInvoker.compress=false to see if that suppresses the problem.
Is this issue still a problem on recent versions of Jenkins? Did Jesse's recommendation in the preceding comment help?
No response to comment in >1 year, so assuming this is long obsolete.
[Originally related to: JENKINS-20114]
Originally reported by jieryn, imported from: upgrade from LTS 1.509.4 to LTS 1.532.1-SNAPSHOT -- layout.jelly java.io.IOException