Skip to content

Branch Manager

Curtis Rose edited this page Apr 11, 2017 · 4 revisions

The Branch Manager

The Branch Manager is the component that handles branching. Branching occurs when two or more pipelines share similarities in their link files. If two different pipelines run the exact same first module with the same input arguments then only one of them needs to run that module. The second run of the pipeline will intelligently use the outputs of that pipeline for the beginning of its own pipeline saving time at the computer cluster. This is called a branch. Orchard can recognize when a branch is necessary and find the 'best fit' link file that most closely matches its own from beginning to end. It will then create a directory inside of that pipelines directory where all of the new outputs will be placed. It does this by comparing the link and configuration files against every other run of the pipelines two configuration files. It outputs an updated configuration file data structure which has updated file paths for the inputs and outputs that point to the branching directory that was created.

Component Specification

  • Input Arguments:
    • Link File Data Structure
    • Configuration File Data Structure
  • Output:
    • Updated Configuration File Data Structure