Scope

  • split the execution to multiple job chains and synchronize for the execution of a subsequent job chain

Split & Sync Pattern

Diagram

 

Explanations

  • As a general rule: whenever a predecssor job chain would have been purged then the job chain would be executed based on its invidual schedule
  • All Job Chains have to complete successfully otherwise they would block the processing of their successors.
  • At any point in time additional dependencies can be added, e.g. in addition to Job Chain B a Job Chain B2 could be created with the same dependencies.
  • For all Job Chains the calendar has to be active otherwise the job chain would not be part of the daily plan.
  • Job Chain I
    • Job Chain I is executed on workdays immediately after the execution of the previous job chains, i.e. some time after 18:00.
    • Job Chain I is executed on Saturday at 14:00 independent from previous job chains.

Use Cases

  • Job Chain B
    • is removed or is not active at 15:30.
      • Job Chain E will start at 16:00.
    • is removed or is not active at 17:45
      • Job Chain E will start immediately.
    • is removed or is not active at 19:00
      • If Job Chain B has already been successfully executed then it is no more part of the daily plan and cannot be removed.
      • If Job Chain B has already been unsuccessfully executed then
        • it can be removed and Job Chain E will start immediately.
        • if it is not removed then Job Chain E will not start.
      • If Job Chain B has not yet completed then it can be removed and Job Chain E will start immediately.

Test Cases

 

  • No labels