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.
- it can be removed and
- If
Job Chain B
has not yet completed then it can be removed andJob Chain E
will start immediately.
- If
- is removed or is not active at 15:30.
Test Cases