Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-54699

Durable Task Version 1.28 break jenkins pipeline

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Critical Critical
    • durable-task-plugin
    • None
    • Linux Ubuntu 16.04 x64
      Jenkins 2.138.1

      When we execute workflow pipeline containing global shared lib, we receive the following exception.  None of the workflow job runs whereas a freestyle job does not have any issue.

      [Office365connector] No webhooks to notify

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L28GitHub has been notified of this commit’s build result

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L30java.lang.AssertionError

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L31 at com.google.common.cache.LocalCache$Segment.expireEntries(LocalCache.java:2653)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L32 at com.google.common.cache.LocalCache$Segment.tryExpireEntries(LocalCache.java:2638)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L33 at com.google.common.cache.LocalCache$Segment.getLiveValue(LocalCache.java:2774)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L34 at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2214)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L35 at com.google.common.cache.LocalCache.get(LocalCache.java:3965)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L36 at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3969)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L37 at com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4829)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L38 at com.google.common.cache.LocalCache$LocalManualCache.getUnchecked(LocalCache.java:4834)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L39 at org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SandboxResolvingClassLoader.loadClass(SandboxResolvingClassLoader.java:51)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L40 at java.lang.ClassLoader.loadClass(ClassLoader.java:411)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L41 at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell$TimingLoader.loadClass(CpsGroovyShell.java:158)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L42 at java.lang.ClassLoader.loadClass(ClassLoader.java:411)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L43 at groovy.lang.GroovyClassLoader.loadClass(GroovyClassLoader.java:677)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L44 at groovy.lang.GroovyClassLoader.loadClass(GroovyClassLoader.java:787)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L45 at java.lang.ClassLoader.loadClass(ClassLoader.java:411)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L46 at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell$TimingLoader.loadClass(CpsGroovyShell.java:158)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L47 at java.lang.ClassLoader.loadClass(ClassLoader.java:411)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L48 at groovy.lang.GroovyClassLoader.loadClass(GroovyClassLoader.java:677)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L49 at org.codehaus.groovy.transform.ASTTransformationVisitor.addPhaseOperationsForGlobalTransforms(ASTTransformationVisitor.java:301)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L50 at org.codehaus.groovy.transform.ASTTransformationVisitor.doAddGlobalTransforms(ASTTransformationVisitor.java:282)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L51 at org.codehaus.groovy.transform.ASTTransformationVisitor.addGlobalTransforms(ASTTransformationVisitor.java:192)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L52 at org.codehaus.groovy.transform.ASTTransformationVisitor.addPhaseOperations(ASTTransformationVisitor.java:156)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L53 at org.codehaus.groovy.control.CompilationUnit.<init>(CompilationUnit.java:207)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L54 at org.codehaus.groovy.control.CompilationUnit.<init>(CompilationUnit.java:124)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L55 at groovy.lang.GroovyClassLoader.createCompilationUnit(GroovyClassLoader.java:456)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L56 at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:277)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L57 at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:268)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L58 at groovy.lang.GroovyShell.parseClass(GroovyShell.java:688)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L59 at groovy.lang.GroovyShell.parse(GroovyShell.java:700)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L60 at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.doParse(CpsGroovyShell.java:131)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L61 at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.reparse(CpsGroovyShell.java:125)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L62 at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.parseScript(CpsFlowExecution.java:560)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L63 at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.start(CpsFlowExecution.java:521)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L64 at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:319)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L65 at hudson.model.ResourceController.execute(ResourceController.java:97)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L66 at hudson.model.Executor.run(Executor.java:429)

      https://jenkins.platformdxc.com/job/Platform%20DXC/job/release-pipeline/view/change-requests/job/PR-729/4/console#L67Finished: FAILURE

          [JENKINS-54699] Durable Task Version 1.28 break jenkins pipeline

          Vivek Pandey added a comment -

          Vivek Pandey added a comment - dnusbaum maybe caused due to https://issues.jenkins-ci.org/plugins/servlet/mobile#issue/JENKINS-50902?

          Devin Nusbaum added a comment -

          vivek I don't think so, nothing about that stack trace looks like durable-task to me, and I don't see how it could be related to that issue. Looks like some kind of issue with a cache in script-security.

          angegar Does downgrading to Durable Task 1.27 fix the issue? Did you update your version of the Script Security plugin or make any changes to pipeline libraries recently? What version of the Script Security plugin are you running?

          Devin Nusbaum added a comment - vivek I don't think so, nothing about that stack trace looks like durable-task to me, and I don't see how it could be related to that issue. Looks like some kind of issue with a cache in script-security. angegar Does downgrading to Durable Task 1.27 fix the issue? Did you update your version of the Script Security plugin or make any changes to pipeline libraries recently? What version of the Script Security plugin are you running?

          laurent gil added a comment -

          dnusbaum, yes we rollback Durable Tasks to the version 1.27.  Our script security plugin is in version 1.48. 
          Basically we update all the plugins once a week except Durable Tasks and Docker pipeline.

          laurent gil added a comment - dnusbaum , yes we rollback Durable Tasks to the version 1.27.  Our script security plugin is in version 1.48.  Basically we update all the plugins once a week except Durable Tasks and Docker pipeline.

          Devin Nusbaum added a comment -

          angegar You can see the only change from Durable Task 1.27 to 1.28 here, and given the stack trace you posted I just don't see how it could be related to that change. Maybe there is an bug in Script Security that shows up rarely after a restart or something, although reading the error again it actually looks like it might be an internal issue in Guava's LocalCache itself (hence the AssertionError without a useful error message). Do you have a minimal Pipeline that can reproduce the error? Did you see any additional stack traces in your logs that might be relevant?

          Devin Nusbaum added a comment - angegar You can see the only change from Durable Task 1.27 to 1.28 here , and given the stack trace you posted I just don't see how it could be related to that change. Maybe there is an bug in Script Security that shows up rarely after a restart or something, although reading the error again it actually looks like it might be an internal issue in Guava's LocalCache itself (hence the AssertionError without a useful error message). Do you have a minimal Pipeline that can reproduce the error? Did you see any additional stack traces in your logs that might be relevant?

            Unassigned Unassigned
            angegar laurent gil
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated: