Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Graphviz diagram corrected

...

Here we have a situation with a combination of parallel and serial processing as shown in the following diagram:

Graphviz
digraph G {
graph [rankdir=LR, ranksep=0.25];
node [fontname=Verdana,fontsize=8];
node [fillcolor="#EEEEEE"];
node [color="#ABCDEF"];
edge [color="#FEDCBA"];
start -> node01;
node01 -> node02;
node02 -> node03;
node03 -> node04;
node04 -> end;
start[shape=Mdiamond];
node01[shape=oval, label="aquire\nlock"];
node02[shape=oval, label="pre-proc\ncheck"];
node03[shape=oval, label="process\ndata"];
node04[shape=oval, label="release\nlock"];
end[shape=Msquare];
} 

 Image missing : !Serial_Job_Execution_with_Locks_-_Overview.png‎|Schematic diagram!

It should be clear that in order to ensure that processing of the different parallel steps does not get out of step it is necessary to introduce some sort of synchronization. One approach would be to use split and sync jobs as described in our Parallel_Execution_in_a_job_chain FAQ. It is however important to ensure that the processing of data records is clearly seperated from each another. This clearly seperated serial processing of data is the subject of this FAQ.

...