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

Pipeline Matrix return a "Method code too large!" on a really short pipeline

XMLWordPrintable

      The following pipeline causes a "Method code too large!" error when you try to execute it, seems related to the environment variables and the number of axis but I dunno why.

      11:51:01  org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
      11:51:01  General error during class generation: Method code too large!
      11:51:01  
      11:51:01  java.lang.RuntimeException: Method code too large!
      11:51:01  	at groovyjarjarasm.asm.MethodWriter.a(Unknown Source)
      11:51:01  	at groovyjarjarasm.asm.ClassWriter.toByteArray(Unknown Source)
      11:51:01  	at org.codehaus.groovy.control.CompilationUnit$17.call(CompilationUnit.java:827)
      11:51:01  	at org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1065)
      11:51:01  	at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:603)
      11:51:01  	at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:581)
      11:51:01  	at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:558)
      11:51:01  	at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:298)
      11:51:01  	at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:268)
      11:51:01  	at groovy.lang.GroovyShell.parseClass(GroovyShell.java:688)
      11:51:01  	at groovy.lang.GroovyShell.parse(GroovyShell.java:700)
      11:51:01  	at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.doParse(CpsGroovyShell.java:142)
      11:51:01  	at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.reparse(CpsGroovyShell.java:127)
      11:51:01  	at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.parseScript(CpsFlowExecution.java:561)
      11:51:01  	at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.start(CpsFlowExecution.java:522)
      11:51:01  	at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:327)
      11:51:01  	at hudson.model.ResourceController.execute(ResourceController.java:97)
      11:51:01  	at hudson.model.Executor.run(Executor.java:428)
      11:51:01  
      11:51:01  1 error
      11:51:01  
      11:51:01  	at org.codehaus.groovy.control.ErrorCollector.failIfErrors(ErrorCollector.java:310)
      11:51:01  	at org.codehaus.groovy.control.CompilationUnit.applyToPrimaryClassNodes(CompilationUnit.java:1085)
      11:51:01  	at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:603)
      11:51:01  	at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:581)
      11:51:01  	at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:558)
      11:51:01  	at groovy.lang.GroovyClassLoader.doParseClass(GroovyClassLoader.java:298)
      11:51:01  	at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:268)
      11:51:01  	at groovy.lang.GroovyShell.parseClass(GroovyShell.java:688)
      11:51:01  	at groovy.lang.GroovyShell.parse(GroovyShell.java:700)
      11:51:01  	at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.doParse(CpsGroovyShell.java:142)
      11:51:01  	at org.jenkinsci.plugins.workflow.cps.CpsGroovyShell.reparse(CpsGroovyShell.java:127)
      11:51:01  	at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.parseScript(CpsFlowExecution.java:561)
      11:51:01  	at org.jenkinsci.plugins.workflow.cps.CpsFlowExecution.start(CpsFlowExecution.java:522)
      11:51:01  	at org.jenkinsci.plugins.workflow.job.WorkflowRun.run(WorkflowRun.java:327)
      11:51:01  	at hudson.model.ResourceController.execute(ResourceController.java:97)
      11:51:01  	at hudson.model.Executor.run(Executor.java:428)
      11:51:01  Finished: FAILURE
      
      #!/usr/bin/env groovy
      
      pipeline {
        agent { label 'linux' }
        stages {
          stage('Tests'){
            matrix {
              agent { label 'linux' }
              environment {
                TMPDIR = "/tmp"
                REUSE_CONTAINERS = "true"
                HOME = "/tmp"
                CONFIG_HOME = "/tmp"
                EC_WS ="/tmp/aaaa"
                VENV = "/tmp/.venv"
                PATH = "/tmp/aaaa/.ci/scripts:/tmp/bin:aaaa/bin:aaaa/.ci/scripts:${env.PATH}"
                CLUSTER_CONFIG_FILE="aaaaa/tests/environments/elastic_cloud.yml"
                ENABLE_ES_DUMP = "true"
              }
              axes {
                axis {
                    name 'TEST'
                    values 'all', 'dotnet', 'go', 'java', 'nodejs', 'python', 'ruby', 'rum'
                }
                axis {
                    name 'ELASTIC_STACK_VERSION'
                    values '8.0.0-SNAPSHOT', '7.7.0-SNAPSHOT', '7.6.1-SNAPSHOT', '6.8.7-SNAPSHOT'
                }
              }
              stages {
                stage('Prepare Test'){
                  steps {
                    echo "Running tests - ${ELASTIC_STACK_VERSION} x ${TEST}"
                  }
                }
              }
            }
          }
        }
      }
      
      

            Unassigned Unassigned
            ifernandezcalvo Ivan Fernandez Calvo
            Votes:
            1 Vote for this issue
            Watchers:
            7 Start watching this issue

              Created:
              Updated:
              Resolved: