[JIRA] [core] (JENKINS-29179) IndexOutOfBounds Exception when viewing live console

19 views
Skip to first unread message

austin@wardsrus.net (JIRA)

unread,
Jul 2, 2015, 3:31:03 AM7/2/15
to jenkinsc...@googlegroups.com
Austin Ward created an issue
 
Jenkins / Bug JENKINS-29179
IndexOutOfBounds Exception when viewing live console
Issue Type: Bug Bug
Assignee: Unassigned
Components: core
Created: 02/Jul/15 7:30 AM
Environment: 1.609.1 LTS

 
ant 1.2
antisamy-markup-formatter 1.3
build-blocker-plugin 1.6
build-flow-extensions-plugin 0.1.1
build-flow-plugin 0.18
build-flow-toolbox-plugin 0.1
build-monitor-plugin 1.6+build.150
build-timeout 1.14.1
buildgraph-view 1.1.1
built-on-column 1.1
cobertura 1.9.7
copy-data-to-workspace-plugin 1.0
copy-to-slave 1.4.4
copyartifact 1.35.1
credentials 1.22
custom-tools-plugin 0.4.4
cvs 2.12
dashboard-view 2.9.5
durable-task 1.5
email-ext 2.40.5
envinject 1.91.3
extended-choice-parameter 0.48
external-monitor-job 1.4
git 2.3.5
git-client 1.17.1
git-server 1.6
gitlab-hook 1.4.0
groovy-postbuild 2.2
javadoc 1.3
job-dsl 1.35
jquery 1.11.2-0
junit 1.6
ldap 1.11
mailer 1.15
mapdb-api 1.0.6.0
matrix-auth 1.2
matrix-combinations-parameter 1.0.8
matrix-project 1.6
matrixtieparent 1.2
maven-plugin 2.10
multi-branch-project-plugin 0.2.2
nested-view 1.14
nodelabelparameter 1.5.1
pam-auth 1.2
parameterized-trigger 2.27
phabricator-plugin 1.6.1
prereq-buildstep 1.1
preSCMbuildstep 0.3
python 1.2
rebuild 1.25
ruby-runtime 0.12
run-condition 1.0
scm-api 0.2
script-security 1.14
slave-setup 1.9
ssh-credentials 1.11
ssh-slaves 1.9
subversion 2.5
throttle-concurrents 1.8.4
token-macro 1.10
translation 1.12
windows-slaves 1.1
workflow-aggregator 1.8
workflow-api 1.8
workflow-basic-steps 1.8
workflow-cps 1.8
workflow-cps-global-lib 1.8
workflow-durable-task-step 1.8
workflow-job 1.8
workflow-scm-step 1.8
workflow-step-api 1.8
workflow-support 1.8
ws-cleanup 0.26
Labels: console consoleoutput crash stacktrace
Priority: Critical Critical
Reporter: Austin Ward

When trying to view the Console of a running build (Freestyle or MultiConfiguration) I get a IndexOutOfBoundsException

javax.servlet.ServletException: java.lang.IndexOutOfBoundsException
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:796)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
at org.kohsuke.stapler.MetaClass$4.doDispatch(MetaClass.java:211)
at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
at org.kohsuke.stapler.MetaClass$13.dispatch(MetaClass.java:411)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
at org.kohsuke.stapler.MetaClass$6.doDispatch(MetaClass.java:249)
at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
at org.kohsuke.stapler.Stapler.invoke(Stapler.java:649)
at org.kohsuke.stapler.Stapler.service(Stapler.java:238)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:686)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1494)
at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:123)
at com.smartcodeltd.jenkinsci.plugin.assetbundler.filters.LessCSS.doFilter(LessCSS.java:46)
at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:120)
at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:114)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:48)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
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 jenkins.security.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:117)
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 jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:93)
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:67)
at hudson.security.ChainedServletFilter$1.doFilter(ChainedServletFilter.java:87)
at hudson.security.ChainedServletFilter.doFilter(ChainedServletFilter.java:76)
at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:168)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:81)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1482)
at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1474)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:499)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1086)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:428)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1020)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
at org.eclipse.jetty.server.Server.handle(Server.java:370)
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:960)
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1021)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:865)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
at org.eclipse.jetty.io.nio.SslConnection.handle(SslConnection.java:196)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:668)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:695)
Caused by: java.lang.IndexOutOfBoundsException
at hudson.MarkupText.rangeCheck(MarkupText.java:276)
at hudson.MarkupText.addMarkup(MarkupText.java:259)
at hudson.console.HyperlinkNote.annotate(HyperlinkNote.java:68)
at hudson.console.ConsoleAnnotationOutputStream$1.annotate(ConsoleAnnotationOutputStream.java:115)
at hudson.console.ConsoleAnnotator$1Aggregator.annotate(ConsoleAnnotator.java:111)
at hudson.console.ConsoleAnnotationOutputStream.eol(ConsoleAnnotationOutputStream.java:145)
at hudson.console.LineTransformationOutputStream.eol(LineTransformationOutputStream.java:60)
at hudson.console.LineTransformationOutputStream.write(LineTransformationOutputStream.java:56)
at hudson.console.LineTransformationOutputStream.write(LineTransformationOutputStream.java:74)
at org.apache.commons.io.output.ProxyOutputStream.write(ProxyOutputStream.java:90)
at org.kohsuke.stapler.framework.io.LargeText$HeadMark.moveTo(LargeText.java:312)
at org.kohsuke.stapler.framework.io.LargeText.writeLogTo(LargeText.java:227)
at hudson.console.AnnotatedLargeText.writeHtmlTo(AnnotatedLargeText.java:169)
at hudson.console.AnnotatedLargeText.writeLogTo(AnnotatedLargeText.java:143)
at org.kohsuke.stapler.framework.io.LargeText.doProgressText(LargeText.java:262)
at hudson.console.AnnotatedLargeText.doProgressiveHtml(AnnotatedLargeText.java:91)
at sun.reflect.GeneratedMethodAccessor853.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:298)
at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161)
at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96)
at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:121)
at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
... 73 more

Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v6.4.2#64017-sha1:e244265)
Atlassian logo

austin@wardsrus.net (JIRA)

unread,
Jul 2, 2015, 12:05:03 PM7/2/15
to jenkinsc...@googlegroups.com
Austin Ward updated an issue
Change By: Austin Ward
Labels: console consoleoutput crash stacktrace  stapler stapler-class

austin@wardsrus.net (JIRA)

unread,
Jul 2, 2015, 9:14:01 PM7/2/15
to jenkinsc...@googlegroups.com
Austin Ward commented on Bug JENKINS-29179
 
Re: IndexOutOfBounds Exception when viewing live console

This seems to happen mostly on multi configuration jobs where I have a job run on all my nodes. I am still trying to find the exact pattern.

austin@wardsrus.net (JIRA)

unread,
Jul 3, 2015, 4:49:02 AM7/3/15
to jenkinsc...@googlegroups.com

This is resolved by changing some global passwords injected by the environment injection plugin. I had a password set with a value of my username which was being printed as the user who was kicking off the build.

I resolved it by setting my username as a generic global environment variable. This still probably shouldn't happen.

austin@wardsrus.net (JIRA)

unread,
Jul 3, 2015, 4:49:02 AM7/3/15
to jenkinsc...@googlegroups.com
Austin Ward updated an issue
Change By: Austin Ward
Component/s: envinject-plugin

o.v.nenashev@gmail.com (JIRA)

unread,
Aug 9, 2015, 5:31:02 AM8/9/15
to jenkinsc...@googlegroups.com
Oleg Nenashev updated an issue
Change By: Oleg Nenashev
When trying to view the Console of a running build (Freestyle or MultiConfiguration) I get a IndexOutOfBoundsException

{noformat}

{noformat}

bcalmac@gmail.com (JIRA)

unread,
Mar 10, 2016, 1:04:01 PM3/10/16
to jenkinsc...@googlegroups.com
bcalmac commented on Bug JENKINS-29179
 
Re: IndexOutOfBounds Exception when viewing live console

I've also encountered this in 1.635 while watching the console output of a job:

Caused by: java.lang.IndexOutOfBoundsException
	at hudson.MarkupText.rangeCheck(MarkupText.java:276)
	at hudson.MarkupText.addMarkup(MarkupText.java:258)
	at hudson.tasks._maven.Maven3MojoNote.annotate(Maven3MojoNote.java:56)
	at hudson.console.ConsoleAnnotationOutputStream$1.annotate(ConsoleAnnotationOutputStream.java:115)
	at hudson.console.ConsoleAnnotator$1Aggregator.annotate(ConsoleAnnotator.java:111)
	at hudson.console.ConsoleAnnotationOutputStream.eol(ConsoleAnnotationOutputStream.java:145)
	at hudson.console.LineTransformationOutputStream.eol(LineTransformationOutputStream.java:60)
	at hudson.console.LineTransformationOutputStream.write(LineTransformationOutputStream.java:56)
	at hudson.console.LineTransformationOutputStream.write(LineTransformationOutputStream.java:74)
	at org.apache.commons.io.output.ProxyOutputStream.write(ProxyOutputStream.java:90)
	at org.kohsuke.stapler.framework.io.LargeText$HeadMark.moveTo(LargeText.java:312)
	at org.kohsuke.stapler.framework.io.LargeText.writeLogTo(LargeText.java:227)
	at hudson.console.AnnotatedLargeText.writeHtmlTo(AnnotatedLargeText.java:169)
	at hudson.console.AnnotatedLargeText.writeLogTo(AnnotatedLargeText.java:143)
	at org.kohsuke.stapler.framework.io.LargeText.doProgressText(LargeText.java:262)
	at hudson.console.AnnotatedLargeText.doProgressiveHtml(AnnotatedLargeText.java:91)
	at sun.reflect.GeneratedMethodAccessor629.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:483)
	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:298)
	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:161)
	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:96)
	at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:121)
	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:53)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)

konrad_w@gmx.de (JIRA)

unread,
Sep 22, 2016, 12:04:02 PM9/22/16
to jenkinsc...@googlegroups.com

We also experience this exception while the build is running. The exact stacktrace for Jenkins 2.7.1 LTS looks like this

....
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.IndexOutOfBoundsException
    at hudson.MarkupText.rangeCheck(MarkupText.java:276)
    at hudson.MarkupText.addMarkup(MarkupText.java:258)
    at hudson.tasks._maven.Maven3MojoNote.annotate(Maven3MojoNote.java:57)
    at hudson.console.ConsoleAnnotationOutputStream$1.annotate(ConsoleAnnotationOutputStream.java:115)
    at hudson.console.ConsoleAnnotator$1Aggregator.annotate(ConsoleAnnotator.java:111)
    at hudson.console.ConsoleAnnotationOutputStream.eol(ConsoleAnnotationOutputStream.java:145)
    at hudson.console.LineTransformationOutputStream.eol(LineTransformationOutputStream.java:60)
    at hudson.console.LineTransformationOutputStream.write(LineTransformationOutputStream.java:56)
    at hudson.console.LineTransformationOutputStream.write(LineTransformationOutputStream.java:74)
    at org.apache.commons.io.output.ProxyOutputStream.write(ProxyOutputStream.java:90)
    at org.kohsuke.stapler.framework.io.LargeText$HeadMark.moveTo(LargeText.java:312)
    at org.kohsuke.stapler.framework.io.LargeText.writeLogTo(LargeText.java:227)
    at hudson.console.AnnotatedLargeText.writeHtmlTo(AnnotatedLargeText.java:168)
    at hudson.console.AnnotatedLargeText.writeLogTo(AnnotatedLargeText.java:143)
    at org.kohsuke.stapler.framework.io.LargeText.doProgressText(LargeText.java:262)
    at hudson.console.AnnotatedLargeText.doProgressiveHtml(AnnotatedLargeText.java:91)
    at sun.reflect.GeneratedMethodAccessor366.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:324)
    at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:167)
    at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:100)
    at org.kohsuke.stapler.MetaClass$1.doDispatch(MetaClass.java:124)
    at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
    at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
    ... 72 more

Once the build is done, the error disappears.

Since the validation fails for the startPos parameter given in https://github.com/kohsuke/hudson/blob/master/core/src/main/java/hudson/MarkupText.java#L258, and it is set to 7 in https://github.com/kohsuke/hudson/blob/master/core/src/main/java/hudson/tasks/_maven/Maven3MojoNote.java#L57 only the 2nd condition in https://github.com/kohsuke/hudson/blob/master/core/src/main/java/hudson/MarkupText.java#L275 must evaluate to false, so 7 is obviously less than or equal to text.length. Since I don't know where the MarkupText is coming from in https://github.com/kohsuke/hudson/blob/master/core/src/main/java/hudson/tasks/_maven/Maven3MojoNote.java#L56 nor do I understand while the startPos is set to 7 instead of 0 I would suggest to at least introduce a better exception message in https://github.com/kohsuke/hudson/blob/master/core/src/main/java/hudson/MarkupText.java#L276 to be able to know what the value of startPos and text.length really is in that case. Once we have that it should be easier to see what is really going on at that point in time.

This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c)
Atlassian logo

o.v.nenashev@gmail.com (JIRA)

unread,
Sep 24, 2016, 9:14:04 PM9/24/16
to jenkinsc...@googlegroups.com

Ideally needs a fix in the Jenkins core.
Would be useful to get more info about EnvInject configuration causing it

rfox@psualum.com (JIRA)

unread,
Dec 29, 2016, 1:03:02 PM12/29/16
to jenkinsc...@googlegroups.com
Ryan Fox commented on Bug JENKINS-29179

I am seeing the same error when viewing the live console for a maven job

hiriumi@gmail.com (JIRA)

unread,
Feb 14, 2019, 2:19:02 PM2/14/19
to jenkinsc...@googlegroups.com
Hayato Iriumi updated an issue
 
Change By: Hayato Iriumi
Attachment: 2019-02-14_11-18-23.jpg
This message was sent by Atlassian Jira (v7.11.2#711002-sha1:fdc329d)

hiriumi@gmail.com (JIRA)

unread,
Feb 14, 2019, 2:21:02 PM2/14/19
to jenkinsc...@googlegroups.com
Hayato Iriumi commented on Bug JENKINS-29179
 
Re: IndexOutOfBounds Exception when viewing live console

When I have Global Passwords option turned on, it is still happening on the latest build of 2.150.2.

 

Steps to repro:

  1. Start a job with Global Passwords turned on.
  2. While the job is running, open Console by clicking on the blue ball on the build that's being run.

 

Reply all
Reply to author
Forward
0 new messages