|qevent(1)||General Commands Manual||qevent(1)|
qevent - subscribe and respond to Grid Engine events
qevent subscribes to "events" generated by the Grid Engine system and loops after writing its pid to the file qevent.pid. It is used by the Grid Engine test suite, and otherwise can be used to wait for a job or task to finish more efficiently than running qstat in a loop. See the example below.
qevent [-h|-help] [-ts|-testsuite] [-sm|-subscribe] [-trigger event script [-trigger event script],...]
- -h, -help
- Show usage
- -ts, -testsuite
- Run in test suite mode.
- -sm, -subscribe
- Run in subscribe mode, printing events from the system.
- -trigger event script
- Start executable script when the specified event occurs. script gets three arguments: event name, job id, and task id. event is one of JB_END: signals a job end; JB_TASK_END: signals a job task end.
- Id of the qevent process.
This is an example of waiting for a job which could be used if the -sync, -hold_jid, or -hold_jid_ad options of qsub aren't sufficient.
$ cat wait-for-job
if [ "$2" = $JOBID ]; then
echo Job $JOBID finished
kill $(cat qevent.pid)
$ export JOBID=`qsub -b y -terse sleep 30`
$ qevent -trigger JB_END ./wait-for-job
Job 122837 finished
Needs tidying up and extending.