About Other Batch Jobs
Limitations
Other Batch jobs are only supported when the Process Manager Server is on UNIX/Linux.
Job Definition
When Process Manager is configured
to communicate with the Other Batch System, you will see the Other
Batch Job work item enabled in Flow Editor:
In the Job Definition, you specify the command to run, other job submission options, and the user account under which the job is to run in the Other Batch System.
Job monitoring and control
You monitor an Other Batch job in the same way as you monitor any other job. In the job’s runtime attributes, you can view the same job information that you can view for any LSF® job.
The following actions can be taken on an Other Batch job:
- Kill: You can kill Other Batch jobs in the same way as you kill any other job. The job may also be killed as a result of the flow being killed. Note that the state of the job will not change until the job is actually killed in the Other Batch System. When you kill a flow that contains Other Batch jobs, the state of the flow immediately changes, but the state of the Other Batch job does not change until the job is actually killed in the Other Batch System.
- Suspend: If you suspend a flow that contains Other Batch jobs, Other Batch jobs will also be suspended. When you suspend a flow that contains Other Batch jobs, the state of the flow immediately changes, but the state of the Other Batch job does not change until the job is actually suspended in the Other Batch System.
- Resume: If you resume a flow that contains Other Batch jobs, Other Batch System jobs will also be resumed. When you resume a flow that contains Other Batch jobs, the state of the flow immediately changes, but the state of the Other Batch job does not change until the job is actually resumed in the Other Batch System.
It is possible that jobs submitted to different batch systems have the same job ID. This is not a problem because jfd distinguishes jobs by job name.
Dependencies
The dependency types coming out of an Other Batch job are:
- Completes successfully: The job completes with exit code 0. If a job state is Done, it is considered as "Completes Successfully", otherwise it is considered as "Fails".
- Fails: The job fails.
- Ends with any exit code: The job exits with any exit code, including 0.
- Ends with exit code: The job exits with a particular exit code pattern. For example, not-equal-to, equal-to.
Failover and Other Batch jobs
Should jfd terminate abnormally, when it restarts it can recover running and finished Other Batch jobs and determine their status and resource usage.
If jfd is shut down normally, or if jfd terminates abnormally:
- If the Other Batch job is still running when jfd is restarted, jfd can recover the job as long as query.sh returns the correct job status from the Other Batch System.
- If the Other Batch job has finished(either normally or abnormally) when jfd is restarted, jfd can recover the exit status and resource usage of the job as long as query.sh returns the correct job status from the Other Batch System.
If eem.batch terminates abnormally, it will be restarted by jfd.