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

Loading pipeline builds is expensive because they store scripts

    • Pipeline - October, Pipeline - April 2018

      Scripts may be large and can be lazy-loaded if needed.  

      CpsFlowExecution.script/loadedScripts should be stored externally

      These can wind up comprising most of the retained size of a CpsFlowExecution for complex builds, but unless reloading a build or using Replay these fields are unused. It would be better to save these to disk (via owner.rootDir) and keep them out of heap.

      Reducing the number of times we have to re-persist the build.xml will reduce the impact of this problem on pipeline execution rates - https://issues.jenkins-ci.org/browse/JENKINS-47174

          [JENKINS-39489] Loading pipeline builds is expensive because they store scripts

          Jesse Glick created issue -
          Sam Van Oort made changes -
          Priority Original: Major [ 3 ] New: Minor [ 4 ]
          Sam Van Oort made changes -
          Epic Link New: JENKINS-47170 [ 185575 ]
          Sam Van Oort made changes -
          Link New: This issue blocks JENKINS-47175 [ JENKINS-47175 ]
          Sam Van Oort made changes -
          Description Original: These can wind up comprising most of the retained size of a {{CpsFlowExecution}} for complex builds, but unless reloading a build or using *Replay* these fields are unused. It would be better to save these to disk (via {{owner.rootDir}}) and keep them out of heap. New:  

          CpsFlowExecution.script/loadedScripts should be stored externally

          These can wind up comprising most of the retained size of a {{CpsFlowExecution}} for complex builds, but unless reloading a build or using *Replay* these fields are unused. It would be better to save these to disk (via {{owner.rootDir}}) and keep them out of heap.
          Sam Van Oort made changes -
          Summary Original: CpsFlowExecution.script/loadedScripts should be stored externally New: Loading pipeline builds is expensive because they store scripts
          Sam Van Oort made changes -
          Description Original:  

          CpsFlowExecution.script/loadedScripts should be stored externally

          These can wind up comprising most of the retained size of a {{CpsFlowExecution}} for complex builds, but unless reloading a build or using *Replay* these fields are unused. It would be better to save these to disk (via {{owner.rootDir}}) and keep them out of heap.
          New: Scripts may be large and can be lazy-loaded if needed.  

          CpsFlowExecution.script/loadedScripts should be stored externally

          These can wind up comprising most of the retained size of a {{CpsFlowExecution}} for complex builds, but unless reloading a build or using *Replay* these fields are unused. It would be better to save these to disk (via {{owner.rootDir}}) and keep them out of heap.

          Reducing the number of times we have to re-persist the build.xml will reduce the impact of this problem on pipeline execution rates - https://issues.jenkins-ci.org/browse/JENKINS-47174
          James Dumay made changes -
          Sprint New: Pipeline - October [ 406 ]
          James Dumay made changes -
          Sprint Original: Pipeline - October [ 406 ] New: Pipeline - October, Pipeline - December [ 406, 446 ]
          Sam Van Oort made changes -
          Link New: This issue is related to JENKINS-49086 [ JENKINS-49086 ]
          Sam Van Oort made changes -
          Labels Original: performance New: performance project-cheetah

            Unassigned Unassigned
            jglick Jesse Glick
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: