[JIRA] (JENKINS-36980) intermittent NPE/500 errors after leaving blue ocean open for a while

3 views
Skip to first unread message

mneale@cloudbees.com (JIRA)

unread,
Jul 27, 2016, 10:02:02 PM7/27/16
to jenkinsc...@googlegroups.com
Michael Neale updated an issue
 
Jenkins / Bug JENKINS-36980
intermittent NPE/500 errors after leaving blue ocean open for a while
Change By: Michael Neale
Summary: intermittent NPE/500 errors after leaving blue ocean open for a while in RebuildPlugin
Add Comment Add Comment
 
This message was sent by Atlassian JIRA (v7.1.7#71011-sha1:2526d7c)
Atlassian logo

bwalding@cloudbees.com (JIRA)

unread,
Jul 27, 2016, 10:02:03 PM7/27/16
to jenkinsc...@googlegroups.com
Ben Walding commented on Bug JENKINS-36980
 
Re: intermittent NPE/500 errors after leaving blue ocean open for a while

/blue/rest/organizations/jenkins/pipelines/<job>/runs/

I don't think it's directly a session / auth issue - this was generated after I had refreshed my main app to ensure session was up to date.

java.io.IOException: Failed to write _links
  at org.kohsuke.stapler.export.Property.safeGetValue(Property.java:151)
  at org.kohsuke.stapler.export.Property.writeTo(Property.java:126)
  at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:227)
  at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:223)
  at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:223)
  at org.kohsuke.stapler.export.Property.writeValue(Property.java:279)
  at org.kohsuke.stapler.export.Property.writeValue(Property.java:222)
  at org.kohsuke.stapler.export.Property.writeValue(Property.java:168)
  at org.kohsuke.stapler.export.Property.writeTo(Property.java:139)
  at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:227)
  at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:223)
  at org.kohsuke.stapler.export.Model.writeNestedObjectTo(Model.java:223)
  at org.kohsuke.stapler.export.Model.writeTo(Model.java:198)
  at org.kohsuke.stapler.ResponseImpl.writeOne(ResponseImpl.java:285)
  at org.kohsuke.stapler.ResponseImpl.serveExposedBean(ResponseImpl.java:273)
  at hudson.model.Api.doJson(Api.java:211)
  at io.jenkins.blueocean.rest.pageable.PagedResponse$Processor$1.generateResponse(PagedResponse.java:55)
  at org.kohsuke.stapler.HttpResponseRenderer$Default.handleHttpResponse(HttpResponseRenderer.java:124)
  at org.kohsuke.stapler.HttpResponseRenderer$Default.generateResponse(HttpResponseRenderer.java:69)
  at org.kohsuke.stapler.Function.renderResponse(Function.java:119)
  at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:102)
  at org.kohsuke.stapler.IndexDispatcher.dispatch(IndexDispatcher.java:26)
  at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
  at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
  at org.kohsuke.stapler.MetaClass$3.doDispatch(MetaClass.java:196)
  at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
  at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
  at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
  at org.kohsuke.stapler.MetaClass$11.dispatch(MetaClass.java:380)
  at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
  at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
  at org.kohsuke.stapler.MetaClass$11.dispatch(MetaClass.java:380)
  at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
  at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
  at org.kohsuke.stapler.MetaClass$11.dispatch(MetaClass.java:380)
  at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
  at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
  at org.kohsuke.stapler.MetaClass$3.doDispatch(MetaClass.java:196)
  at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
  at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
  at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
  at org.kohsuke.stapler.MetaClass$11.dispatch(MetaClass.java:380)
  at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
  at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
  at org.kohsuke.stapler.MetaClass$11.dispatch(MetaClass.java:380)
  at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
  at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
  at org.kohsuke.stapler.MetaClass$11.dispatch(MetaClass.java:380)
  at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:746)
  at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
  at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:686)
  at org.kohsuke.stapler.Stapler.invoke(Stapler.java:876)
  at org.kohsuke.stapler.MetaClass$11.dispatch(MetaClass.java:380)
  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:790)
  at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:812)
  at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1669)
  at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:135)
  at org.jenkinsci.plugins.ssegateway.Endpoint$SSEListenChannelFilter.doFilter(Endpoint.java:225)
  at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:132)
  at jenkins.metrics.impl.MetricsFilter.doFilter(MetricsFilter.java:125)
  at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:132)
  at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:126)
  at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
  at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:86)
  at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
  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:171)
  at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
  at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
  at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
  at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
  at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
  at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
  at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
  at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
  at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
  at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:553)
  at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
  at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
  at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
  at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
  at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
  at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
  at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
  at org.eclipse.jetty.server.Server.handle(Server.java:499)
  at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:311)
  at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
  at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:544)
  at winstone.BoundedExecutorService$1.run(BoundedExecutorService.java:77)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.reflect.InvocationTargetException
  at sun.reflect.GeneratedMethodAccessor108.invoke(Unknown Source)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:498)
  at org.kohsuke.stapler.export.MethodProperty.getValue(MethodProperty.java:66)
  at org.kohsuke.stapler.export.Property.safeGetValue(Property.java:145)
  ... 111 more
Caused by: java.lang.NullPointerException

(I did not chop that exception - I just put what was in the chrome panel)

mneale@cloudbees.com (JIRA)

unread,
Jul 27, 2016, 10:03:02 PM7/27/16
to jenkinsc...@googlegroups.com
Michael Neale updated an issue
Change By: Michael Neale
UPDATE: this seems to be happening from time to time, on Bens instance. It may not be related to auth. There is always a pattern of some JSON returned in the response, and then truncated, and then a HTML stacktrace.


Uncovered by [~bwalding]:

Request: 500 error accessing /blue/organizations/jenkins/<job>build/activity
Page: /blue/rest/organizations/jenkins/pipelines/<job>/build/runs/


{noformat}

Caused by: java.lang.reflect.InvocationTargetException
  at sun.reflect.GeneratedMethodAccessor108.invoke(Unknown Source)
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  at java.lang.reflect.Method.invoke(Method.java:498)
  at org.kohsuke.stapler.export.MethodProperty.getValue(MethodProperty.java:66)
  at org.kohsuke.stapler.export.Property.safeGetValue(Property.java:145)
  ... 111 more
Caused by: java.lang.NullPointerException
  at com.sonyericsson.rebuild.RebuildAction.isRebuildDisbaled(RebuildAction.java:370)
  at com.sonyericsson.rebuild.RebuildAction.isRebuildAvailable(RebuildAction.java:360)
  at com.sonyericsson.rebuild.RebuildAction.getUrlName(RebuildAction.java:186)
  at io.jenkins.blueocean.service.embedded.rest.ActionProxiesImpl.getUrlName(ActionProxiesImpl.java:33)
  at io.jenkins.blueocean.service.embedded.rest.ActionProxiesImpl.getLink(ActionProxiesImpl.java:43)
  at io.jenkins.blueocean.rest.hal.Links.getOrCreateSelfRef(Links.java:123)
  at io.jenkins.blueocean.rest.hal.Links.&lt;init>(Links.java:52)
  at io.jenkins.blueocean.rest.model.Resource.getLinks(Resource.java:38)
  ... 116 more
{noformat}
*The original trace came from an internal instance - bwalding can supply more information and request info on the instance if required*

This points to this line: https://github.com/jenkinsci/rebuild-plugin/blob/master/src/main/java/com/sonyericsson/rebuild/RebuildAction.java#L152 possibly

Currently he is using google auth for identity, and it seems to happen after 30 minutes.

Reloading the page causes things to work again just fine.

On theory is that session is not re-established cleanly and the null is the api is trying to access things in an unauthenticated state.

Investigation required.

mneale@cloudbees.com (JIRA)

unread,
Jul 27, 2016, 11:37:01 PM7/27/16
to jenkinsc...@googlegroups.com
Michael Neale commented on Bug JENKINS-36980
 
Re: intermittent NPE/500 errors after leaving blue ocean open for a while

Vivek Pandey have updated the ticket - not related to timeouts/session I think. There is a NPE somewhere when it is rendering _links now:

,"href":"/blue/rest/organizations/jenkins/pipelines/ecs-apps/pipelines/cloudbees-console/pipelines/cloudbees-console-frontend/branches/production/runs/13/testReport/"}},"_class":"hudson.tasks.junit.TestResultAction","failCount":0,"skipCount":0,"totalCount":42,"urlName":"testReport"},{"_

is where it gets to before NPE happens. the json stops at that point.
Still not sure what plugin could be causing it.

vivek.pandey@gmail.com (JIRA)

unread,
Jul 27, 2016, 11:40:01 PM7/27/16
to jenkinsc...@googlegroups.com

Michael Neale Ah, I see. This is happening collecting underlying actions. The code that collects these actions, should skip misbehaving actions instead failing completely. I will work on a fix tomorrow.

jdumay@cloudbees.com (JIRA)

unread,
Jul 31, 2016, 9:01:01 PM7/31/16
to jenkinsc...@googlegroups.com

jdumay@cloudbees.com (JIRA)

unread,
Aug 21, 2016, 9:14:07 PM8/21/16
to jenkinsc...@googlegroups.com

vivek.pandey@gmail.com (JIRA)

unread,
Aug 22, 2016, 6:38:01 PM8/22/16
to jenkinsc...@googlegroups.com
Vivek Pandey started work on Bug JENKINS-36980
 
Change By: Vivek Pandey
Status: Open In Progress

vivek.pandey@gmail.com (JIRA)

unread,
Aug 24, 2016, 4:22:06 PM8/24/16
to jenkinsc...@googlegroups.com

vivek.pandey@gmail.com (JIRA)

unread,
Aug 24, 2016, 8:27:03 PM8/24/16
to jenkinsc...@googlegroups.com

jbriden@cloudbees.com (JIRA)

unread,
Jul 6, 2018, 5:05:30 PM7/6/18
to jenkinsc...@googlegroups.com
Jenn Briden closed an issue as Fixed
Change By: Jenn Briden
Status: Resolved Closed
This message was sent by Atlassian JIRA (v7.10.1#710002-sha1:6efc396)
Reply all
Reply to author
Forward
0 new messages