Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

java.lang.ClassCastException: org.jenkinsci.plugins.workflow.job.WorkflowRun cannot be cast to hudson.model.AbstractBuild #399

Open
mbasunov opened this issue Oct 19, 2018 · 3 comments

Comments

@mbasunov
Copy link

Hello,
we're constantly getting
java.lang.ClassCastException: org.jenkinsci.plugins.workflow.job.WorkflowRun cannot be cast to hudson.model.AbstractBuild
on one of our Build Monitor views while other works properly.

Jenkins ver. 2.138.2
Build Monitor 1.12+build.201809061734
Pipeline 2.5

We're mitigated the error by disabling option "Display committers" at the moment.

Thanks.

Java stack trace

ERROR dispatch failed
Also:   java.lang.ClassCastException: org.jenkinsci.plugins.workflow.job.WorkflowRun cannot be cast to hudson.model.AbstractBuild
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.culprits.BuildCulpritsAbstractBuild.getCommittersForRun(BuildCulpritsAbstractBuild.java:36)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.culprits.BuildCulpritsRetriever.getCommitters(BuildCulpritsRetriever.java:40)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.culprits.BuildCulpritsRetriever.getCommitters(BuildCulpritsRetriever.java:47)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.viewmodel.BuildView.committers(BuildView.java:142)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.viewmodel.features.headline.HeadlineOfFixed.committersOf(HeadlineOfFixed.java:55)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.viewmodel.features.headline.HeadlineOfFixed.textFor(HeadlineOfFixed.java:40)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.viewmodel.features.headline.HeadlineOfFixed.asJson(HeadlineOfFixed.java:32)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.viewmodel.features.headline.HeadlineOfFixed.asJson(HeadlineOfFixed.java:15)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.viewmodel.features.HasHeadline.asJson(HasHeadline.java:34)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.viewmodel.features.HasHeadline.asJson(HasHeadline.java:16)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.viewmodel.JobViewSerialiser.serialize(JobViewSerialiser.java:25)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.viewmodel.JobViewSerialiser.serialize(JobViewSerialiser.java:13)
		at org.codehaus.jackson.map.ser.std.StdContainerSerializers$IndexedListSerializer.serializeContents(StdContainerSerializers.java:122)
	Caused: org.codehaus.jackson.map.JsonMappingException: org.jenkinsci.plugins.workflow.job.WorkflowRun cannot be cast to hudson.model.AbstractBuild (through reference chain: com.smartcodeltd.jenkinsci.plugins.buildmonitor.api.Success["data"]->java.util.ArrayList[0])
		at org.codehaus.jackson.map.JsonMappingException.wrapWithPath(JsonMappingException.java:218)
		at org.codehaus.jackson.map.JsonMappingException.wrapWithPath(JsonMappingException.java:197)
		at org.codehaus.jackson.map.ser.std.SerializerBase.wrapAndThrow(SerializerBase.java:166)
		at org.codehaus.jackson.map.ser.std.StdContainerSerializers$IndexedListSerializer.serializeContents(StdContainerSerializers.java:127)
		at org.codehaus.jackson.map.ser.std.StdContainerSerializers$IndexedListSerializer.serializeContents(StdContainerSerializers.java:71)
		at org.codehaus.jackson.map.ser.std.AsArraySerializerBase.serialize(AsArraySerializerBase.java:86)
		at org.codehaus.jackson.map.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:446)
		at org.codehaus.jackson.map.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:150)
		at org.codehaus.jackson.map.ser.BeanSerializer.serialize(BeanSerializer.java:112)
		at org.codehaus.jackson.map.ser.StdSerializerProvider._serializeValue(StdSerializerProvider.java:610)
		at org.codehaus.jackson.map.ser.StdSerializerProvider.serializeValue(StdSerializerProvider.java:256)
		at org.codehaus.jackson.map.ObjectMapper._configAndWriteValue(ObjectMapper.java:2575)
		at org.codehaus.jackson.map.ObjectMapper.writeValueAsString(ObjectMapper.java:2097)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.api.Respond.withSuccess(Respond.java:15)
		at com.smartcodeltd.jenkinsci.plugins.buildmonitor.BuildMonitorView.fetchJobViews(BuildMonitorView.java:142)
		at java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:627)
		at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:343)
		at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:184)
		at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:117)
		at org.kohsuke.stapler.MetaClass$JavaScriptProxyMethodDispatcher.doDispatch(MetaClass.java:473)
		at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:58)
		at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:734)
		at org.kohsuke.stapler.Stapler.invoke(Stapler.java:864)
		at org.kohsuke.stapler.MetaClass$10.dispatch(MetaClass.java:374)
		at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:734)
		at org.kohsuke.stapler.Stapler.invoke(Stapler.java:864)
		at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:801)
		at org.kohsuke.stapler.Stapler.invoke(Stapler.java:864)
		at org.kohsuke.stapler.Stapler.invoke(Stapler.java:668)
		at org.kohsuke.stapler.Stapler.service(Stapler.java:199)
		at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
		at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:865)
		at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1655)
		at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:154)
		at com.smartcodeltd.jenkinsci.plugin.assetbundler.filters.LessCSS.doFilter(LessCSS.java:47)
		at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)
		at com.marvelution.jenkins.plugins.jira.filter.StreamsServletFilter.doFilter(StreamsServletFilter.java:86)
		at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)
		at com.marvelution.jenkins.plugins.jira.filter.ApplinksServletFilter.doFilter(ApplinksServletFilter.java:85)
		at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:151)
		at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:157)
		at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
		at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:99)
		at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
		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:90)
		at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:171)
		at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
		at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:49)
		at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
		at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
		at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
		at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
		at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
		at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
		at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
		at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)
		at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
		at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
		at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
		at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
		at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1317)
		at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
		at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
		at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
		at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
		at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1219)
		at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
		at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
		at org.eclipse.jetty.server.Server.handle(Server.java:531)
		at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:352)
	Caused: java.lang.IllegalStateException: Error already set
		at org.eclipse.jetty.server.HttpChannelState.onError(HttpChannelState.java:755)
		at org.eclipse.jetty.server.HttpChannel.handleException(HttpChannel.java:578)
		at org.eclipse.jetty.server.HttpChannelOverHttp.handleException(HttpChannelOverHttp.java:489)
		at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:514)
java.lang.IllegalStateException: WRITER
	at org.eclipse.jetty.server.Response.getOutputStream(Response.java:917)
	at javax.servlet.ServletResponseWrapper.getOutputStream(ServletResponseWrapper.java:142)
	at org.kohsuke.stapler.compression.CompressionServletResponse.activate(CompressionServletResponse.java:61)
	at org.kohsuke.stapler.compression.CompressionFilter.activate(CompressionFilter.java:108)
	at org.kohsuke.stapler.ResponseImpl.getCompressedOutputStream(ResponseImpl.java:302)
	at org.kohsuke.stapler.jelly.DefaultScriptInvoker.createOutputStream(DefaultScriptInvoker.java:88)
	at org.kohsuke.stapler.jelly.DefaultScriptInvoker.createXMLOutput(DefaultScriptInvoker.java:68)
	at org.kohsuke.stapler.jelly.DefaultScriptInvoker.invokeScript(DefaultScriptInvoker.java:51)
	at org.kohsuke.stapler.jelly.JellyFacet$1.dispatch(JellyFacet.java:102)
	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:734)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:864)
	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:668)
	at hudson.init.impl.InstallUncaughtExceptionHandler.lambda$init$0(InstallUncaughtExceptionHandler.java:36)
	at org.kohsuke.stapler.compression.CompressionFilter.reportException(CompressionFilter.java:77)
	at org.kohsuke.stapler.compression.CompressionFilter.doFilter(CompressionFilter.java:52)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:82)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
	at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:30)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1642)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:533)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:146)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:257)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1595)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:255)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1317)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:203)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:473)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1564)
	at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:201)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1219)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:144)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
	at org.eclipse.jetty.server.Server.handle(Server.java:531)
	at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:352)
	at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:260)
	at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:281)
	at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:102)
	at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:118)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:333)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:310)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:168)
	at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:126)
	at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:366)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:762)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:680)
	at java.lang.Thread.run(Thread.java:748)```

</p>
</details>
@ipikiiskinen
Copy link

ipikiiskinen commented Oct 19, 2018

Upgrade from 1.12+build.201805070054 to 1.12+build.201809061734 got our build monitors that use "Display committers" broken also.
Jenkins version: 2.147.1

@TobiX
Copy link
Contributor

TobiX commented Oct 31, 2018

This is probably the same as #393

@IvanBelis
Copy link

We are having the same problem but the classcastexception is slightly different:

Caught unhandled exception with ID f545cec7-858a-48c7-aef4-91282373d7f3
java.lang.ClassCastException: com.tikal.jenkins.plugins.multijob.MultiJobBuild cannot be cast to org.jenkinsci.plugins.workflow.job.WorkflowRun
at com.smartcodeltd.jenkinsci.plugins.buildmonitor.culprits.BuildCulpritsWorkflowRun.getCommittersForRun(BuildCulpritsWorkflowRun.java:46)

Disabling the "Display committers" at the moment

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants