500 error on wfapi/runs

XMLWordPrintable

    • Type: Bug
    • Resolution: Unresolved
    • Priority: Minor
    • None
    • Environment:
      Pipeline: Stage View Plugin
      Version2.38

      I have several jobs all using the same jenkins script which have been working for a long time.  Recently one of the jobs has started reporting 500 errors when calling the following endpoint...

      http://10.5.1.253:8080/job/SmartLabNext/wfapi/runs?fullStages=true&_=1764717891741

      ...resulting in the Stage View not being displayed for the job.

      I'm running Jenkins Version 2.528.2 on windows on

      java 21.0.3 2024-04-16 LTS
      Java(TM) SE Runtime Environment (build 21.0.3+7-LTS-152)
      Java HotSpot(TM) 64-Bit Server VM (build 21.0.3+7-LTS-152, mixed mode, sharing)

      the following is a stack trace of the error logged...

      2025-12-02 23:29:50.210+0000 [id=199]	WARNING	h.i.i.InstallUncaughtExceptionHandler#handleException: Caught unhandled exception with ID b968f2ee-1cde-415e-84b6-0504ef76267fjava.lang.ClassCastException: class org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode cannot be cast to class org.jenkinsci.plugins.workflow.graph.BlockStartNode (org.jenkinsci.plugins.workflow.cps.nodes.StepEndNode is in unnamed module of loader 'PluginClassLoader for workflow-cps' @382945cb; org.jenkinsci.plugins.workflow.graph.BlockStartNode is in unnamed module of loader 'PluginClassLoader for workflow-api' @1c88bbac)	at PluginClassLoader for workflow-api//org.jenkinsci.plugins.workflow.graph.BlockEndNode.getStartNode(BlockEndNode.java:61)	at PluginClassLoader for workflow-api//org.jenkinsci.plugins.workflow.graphanalysis.ForkScanner.getNodeType(ForkScanner.java:206)	at PluginClassLoader for workflow-api//org.jenkinsci.plugins.workflow.graphanalysis.ForkScanner.next(ForkScanner.java:620)	at PluginClassLoader for workflow-api//org.jenkinsci.plugins.workflow.graphanalysis.AbstractFlowScanner.next(AbstractFlowScanner.java:211)	at PluginClassLoader for workflow-api//org.jenkinsci.plugins.workflow.graphanalysis.ForkScanner.next(ForkScanner.java:593)	at PluginClassLoader for workflow-api//org.jenkinsci.plugins.workflow.graphanalysis.ForkScanner.visitSimpleChunks(ForkScanner.java:796)	at PluginClassLoader for workflow-api//org.jenkinsci.plugins.workflow.graphanalysis.ForkScanner.visitSimpleChunks(ForkScanner.java:661)	at PluginClassLoader for pipeline-rest-api//com.cloudbees.workflow.rest.external.RunExt.createNew(RunExt.java:323)	at PluginClassLoader for pipeline-rest-api//com.cloudbees.workflow.rest.external.RunExt.create(RunExt.java:311)	at PluginClassLoader for pipeline-rest-api//com.cloudbees.workflow.rest.external.JobExt.create(JobExt.java:148)	at PluginClassLoader for pipeline-rest-api//com.cloudbees.workflow.rest.endpoints.JobAPI.doRuns(JobAPI.java:69)	at java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:733)	at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:484)Caused: java.lang.reflect.InvocationTargetException	at org.kohsuke.stapler.Function$MethodFunction.invoke(Function.java:488)	at org.kohsuke.stapler.Function$InstanceFunction.invoke(Function.java:497)	at PluginClassLoader for pipeline-rest-api//com.cloudbees.workflow.util.ServeJson$Processor.invoke(ServeJson.java:30)Caused: java.lang.RuntimeException: Unexpected exception while serving JSON	at PluginClassLoader for pipeline-rest-api//com.cloudbees.workflow.util.ServeJson$Processor.invoke(ServeJson.java:34)	at org.kohsuke.stapler.PreInvokeInterceptedFunction.invoke(PreInvokeInterceptedFunction.java:26)	at org.kohsuke.stapler.Function.bindAndInvoke(Function.java:218)	at org.kohsuke.stapler.Function.bindAndInvokeAndServeResponse(Function.java:140)	at org.kohsuke.stapler.MetaClass$12.doDispatch(MetaClass.java:686)	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:61)	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:800)	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:938)	at org.kohsuke.stapler.MetaClass$10.dispatch(MetaClass.java:590)	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:800)	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:938)	at org.kohsuke.stapler.MetaClass$5.doDispatch(MetaClass.java:369)	at org.kohsuke.stapler.NameBasedDispatcher.dispatch(NameBasedDispatcher.java:61)	at org.kohsuke.stapler.Stapler.tryInvoke(Stapler.java:800)	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:938)	at org.kohsuke.stapler.Stapler.invoke(Stapler.java:721)	at org.kohsuke.stapler.Stapler.service(Stapler.java:253)	at Jenkins Main ClassLoader//jakarta.servlet.http.HttpServlet.service(HttpServlet.java:587)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHolder.handle(ServletHolder.java:780)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1668)	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:204)	at jenkins.util.HttpServletFilter$1.doFilter(HttpServletFilter.java:77)	at hudson.util.PluginServletFilter$1.doFilter(PluginServletFilter.java:201)	at hudson.util.PluginServletFilter.doFilter(PluginServletFilter.java:207)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)	at jenkins.ErrorAttributeFilter.doFilter(ErrorAttributeFilter.java:29)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)	at hudson.security.csrf.CrumbFilter.doFilter(CrumbFilter.java:160)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)	at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:94)	at jenkins.security.AcegiSecurityExceptionFilter.doFilter(AcegiSecurityExceptionFilter.java:52)	at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)	at hudson.security.UnwrapSecurityExceptionFilter.doFilter(UnwrapSecurityExceptionFilter.java:54)	at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:125)	at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:119)	at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)	at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:100)	at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)	at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:114)	at org.springframework.security.web.authentication.rememberme.RememberMeAuthenticationFilter.doFilter(RememberMeAuthenticationFilter.java:105)	at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)	at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:235)	at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:229)	at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)	at jenkins.security.BasicHeaderProcessor.doFilter(BasicHeaderProcessor.java:106)	at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:117)	at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)	at hudson.security.HttpSessionContextIntegrationFilter2.doFilter(HttpSessionContextIntegrationFilter2.java:63)	at hudson.security.ChainedServletFilter2$1.doFilter(ChainedServletFilter2.java:99)	at hudson.security.ChainedServletFilter2.doFilter(ChainedServletFilter2.java:111)	at hudson.security.HudsonFilter.doFilter(HudsonFilter.java:173)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)	at org.kohsuke.stapler.UncaughtExceptionFilter.doFilter(UncaughtExceptionFilter.java:26)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)	at hudson.util.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:86)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)	at org.kohsuke.stapler.DiagnosticThreadNameFilter.doFilter(DiagnosticThreadNameFilter.java:31)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)	at jenkins.security.SuspiciousRequestFilter.doFilter(SuspiciousRequestFilter.java:38)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.FilterHolder.doFilter(FilterHolder.java:202)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1638)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler.doHandle(ServletHandler.java:526)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.handle(ScopedHandler.java:127)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.security.SecurityHandler.handle(SecurityHandler.java:574)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HandlerWrapper.handle(HandlerWrapper.java:124)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextHandle(ScopedHandler.java:197)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.SessionHandler.doHandle(SessionHandler.java:612)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextHandle(ScopedHandler.java:195)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler.doHandle(ContextHandler.java:1045)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextScope(ScopedHandler.java:164)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.servlet.ServletHandler.doScope(ServletHandler.java:483)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextScope(ScopedHandler.java:162)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.SessionHandler.doScope(SessionHandler.java:589)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.nextScope(ScopedHandler.java:162)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler.doScope(ContextHandler.java:966)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ScopedHandler.handle(ScopedHandler.java:125)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler.handle(ContextHandler.java:1719)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HttpChannel$RequestDispatchable.dispatch(HttpChannel.java:1565)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HttpChannel.dispatch(HttpChannel.java:724)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.HttpChannel.handle(HttpChannel.java:512)	at Jenkins Main ClassLoader//org.eclipse.jetty.ee9.nested.ContextHandler$CoreContextHandler$CoreToNestedHandler.handle(ContextHandler.java:3029)	at Jenkins Main ClassLoader//org.eclipse.jetty.server.handler.ContextHandler.handle(ContextHandler.java:1071)	at Jenkins Main ClassLoader//org.eclipse.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:611)	at Jenkins Main ClassLoader//org.eclipse.jetty.server.Server.handle(Server.java:182)	at Jenkins Main ClassLoader//org.eclipse.jetty.server.internal.HttpChannelState$HandlerInvoker.run(HttpChannelState.java:677)	at Jenkins Main ClassLoader//org.eclipse.jetty.server.internal.HttpConnection.onFillable(HttpConnection.java:416)	at Jenkins Main ClassLoader//org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:322)	at Jenkins Main ClassLoader//org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:99)	at Jenkins Main ClassLoader//org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)	at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:480)	at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:443)	at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:293)	at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.run(AdaptiveExecutionStrategy.java:201)	at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:311)	at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:981)	at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.doRunJob(QueuedThreadPool.java:1211)	at Jenkins Main ClassLoader//org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1166)	at java.base/java.lang.Thread.run(Thread.java:1583) 

            Assignee:
            Unassigned
            Reporter:
            mick lang
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: