-
Improvement
-
Resolution: Duplicate
-
Major
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.
- duplicates
-
JENKINS-45585 WorkflowRun.onLoad need not eagerly load the FlowExecution of a completed build
- Closed
- is related to
-
JENKINS-39489 Loading pipeline builds is expensive because they store scripts
- Open
- relates to
-
JENKINS-47173 Offer a high-performance storage engine for pipeline at some cost to resumability
- Closed
-
JENKINS-45585 WorkflowRun.onLoad need not eagerly load the FlowExecution of a completed build
- Closed