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

Lazy-initialize FlowNodeStorage and heads, etc

    XMLWordPrintable

    Details

    • Similar Issues:

      Description

      When loading Pipeline builds (WorkflowRuns) they eagerly load the FlowHeads, etc as part of deserialization.  This triggers additional disk hits and initialization to create the FlowNodeStorage and populate it with those nodes. 

      We should lazy-load these for completed builds and avoid fetching heads until requested – this makes operations that iterate through builds much faster. 

      This is especially important because the Bulk FlowNode storage (https://issues.jenkins-ci.org/browse/JENKINS-47173) will load all the nodes when created – which will happen when loading the build.  The CPU and disk hit for deserialization may be rather significant.   

        Attachments

          Issue Links

            Activity

            Hide
            svanoort Sam Van Oort added a comment -

            Similar issues to the scripts and other WorkflowRun fields. 

            Show
            svanoort Sam Van Oort added a comment - Similar issues to the scripts and other WorkflowRun fields. 
            Hide
            svanoort Sam Van Oort added a comment -

            Handled internally by JENKINS-45585 implementation in Workflow-Job - released with version 2.18

            Show
            svanoort Sam Van Oort added a comment - Handled internally by JENKINS-45585 implementation in Workflow-Job - released with version 2.18

              People

              • Assignee:
                svanoort Sam Van Oort
                Reporter:
                svanoort Sam Van Oort
              • Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: