Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • In such a exceptional situation to achieve the business process goals with adherence to the SLA, some jobs can be excluded from the business process (job chains).
  • A non critical job can be marked in a job chain either "-" skippable or "+" critical job during job chain development.
  • If a situation arises where part of the job chain has to be skipped, JobScheduler admin can start the  job activate_critical_path.job.xml. Job activate_critical_path.job.xml  will search through the JobScheduler configuration and set the non-critical job(s) as skip.
  • A job chain with non-critical job(s) set to skip by all the Orders( manually/scheduled )
  • Once business process completes only with  critical job, the job chains original state can be reset by the job deactivate_critical_path.job.xml

Example Job Chain

Code Block
languagexml
titleJob chain critical path
collapsetrue
<?xml version="1.0" encoding="iso-8859-1"?>
<job_chain  orders_recoverable="yes" visible="yes" title="JobChainA" max_orders="3">
    <job_chain_node  state="Start" job="/sos/jitl/JobChainStart" next_state="-100" error_state="End_Err"/>
    <job_chain_node  state="-100" job="01_TaskA1" next_state="200" error_state="End_Err"/>
    <job_chain_node  state="200" job="01_TaskA2" next_state="-300" error_state="End_Err"/>
    <job_chain_node  state="-300" job="01_TaskA3" next_state="400" error_state="End_Err"/>
    <job_chain_node  state="400" job="01_TaskA4" next_state="500" error_state="End_Err"/>
    <job_chain_node  state="500" job="01_TaskA5" next_state="End_Suc" error_state="End_Err"/>
    <job_chain_node  state="End_Suc" job="/sos/jitl/JobChainEnd" next_state="Success" error_state="Error"/>
    <job_chain_node  state="End_Err" job="/sos/jitl/JobChainEnd" next_state="Error" error_state="Error"/>
    <job_chain_node  state="Error"/>
    <job_chain_node  state="Success"/>
</job_chain>



Dynamic Critical Path Activation 

...

  • In such a exceptional situation job chain can have first node of the chain which checks the current time and if it finds late arrival of the file, triggers the job activate_critical_path.job.xml for specific job chain.
  • Once process finishes successfully the last node of the job chain can start the job deactivate_critical_path.job.xml which will reset the job chain status back to normal with all the jobs set to executed. 

  

Code Block
languagexml
titleJob chain critical path Dynamic
collapsetrue
<?xml version="1.0" encoding="iso-8859-1"?>
<job_chain  orders_recoverable="yes" visible="yes" title="JobChainA" max_orders="3">
    <job_chain_node  state="Start" job="/sos/jitl/JobChainStart" next_state="-100" error_state="End_Err"/>
    <job_chain_node  state="activate_critical_path" job="/sos/operations/activate_critical_path" next_state="-100" error_state="End_Err"/>
    <job_chain_node  state="-100" job="01_TaskA1" next_state="200" error_state="End_Err"/>
    <job_chain_node  state="200" job="01_TaskA2" next_state="-300" error_state="End_Err"/>
    <job_chain_node  state="-300" job="01_TaskA3" next_state="400" error_state="End_Err"/>
    <job_chain_node  state="400" job="01_TaskA4" next_state="500" error_state="End_Err"/>
    <job_chain_node  state="500" job="01_TaskA5" next_state="End_Suc" error_state="End_Err"/>
    <job_chain_node  state="deactivate_critical_path" job="/sos/operations/deactivate_critical_path" next_state="End_Suc" error_state="End_Err"/>
    <job_chain_node  state="End_Suc" job="/sos/jitl/JobChainEnd" next_state="Success" error_state="Error"/>
    <job_chain_node  state="End_Err" job="/sos/jitl/JobChainEnd" next_state="Error" error_state="Error"/>
    <job_chain_node  state="Error"/>
    <job_chain_node  state="Success"/>
</job_chain>