[GE users] unbuffered qsub output

Charu Chaubal Charu.Chaubal at Sun.COM
Wed May 4 17:37:01 BST 2005


Hi,

Why not just submit the job with a known (unique) name using '-N 
<name>'?

Then, you can simply kill the job using 'qdel <name>'.

Regards,
	Charu

On May 4, 2005, at 6:35 AM, Olesen, Mark wrote:

> I have a somewhat annoying problem to solve.
> The short question boils down to "how can a calling process access the
> job_id of a pending job that was submitted via 'qsub -sync y'?"
>
> Here is the background information:
>
> I have software (running under windows & unix) that uses sockets to 
> send its
> jobs to a unix machine for remote execution. On the unix side, the 
> shell
> script called looks something like this:
>
> ...
> if [ -z "$JOB_ID" ]; then
>
> cat<<PRINT > job.LOG
>
> ======================================================================
> SCRIPT=$0
> PWD=$PWD
> ARGV=$@
> ======================================================================
>
>
> PRINT
>
>
>    tail -10f job.LOG &
>    idtail=$!;           # kill later
>    trap 'kill $idtail' HUP INT QUIT ABRT KILL SEGV TERM CHLD STOP EXIT
>
>
>    # submit and block until the job is done
>    $SGE_BINARY_PATH/qsub -sync y -o job.LOG $0 $@
>
>    exit 0
> fi
>
> # main entry point for qsub job
> #$ -S /bin/sh -cwd -j y -N gtp -o gtp.o$JOB_ID
> echo "(II) job_id  $JOB_ID"
> ...
>
>
> I am using the backgrounded 'tail' command so that the user sees the
> activity in the output window.
>
> When the user closes the output window, a kill script is started that 
> can be
> used to kill the remote simulation and perform other cleanup 
> operations.
> Currently, the kill script finds the JOB_ID based on the "(II) job_id"
> string appearing in the job.LOG file and uses this information for a 
> qdel.
> The design flaw is that this information is only written into the log 
> file
> when a job starts running. If the user cancels the remote simulation 
> while
> the job is still pending, this JOB_ID information is not available.
>
> I had the idea of using "qsub ... >> job.LOG" to capture the string
> 	Your job 6319 ("sleeper") has been submitted
>
> However, when the '-sync y' option is used, this output is buffered.
>
> How can I access the job id for such a pending job?
>
> Cheers,
> /mark
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe at gridengine.sunsource.net
> For additional commands, e-mail: users-help at gridengine.sunsource.net
>
>
###############################################################
# Charu V. Chaubal				# Phone: (650) 786-7672 (x87672)
# Grid Computing Technologist	# Fax:   (650) 786-4591
# Sun Microsystems, Inc.			# Email: charu.chaubal at sun.com
###############################################################


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe at gridengine.sunsource.net
For additional commands, e-mail: users-help at gridengine.sunsource.net




More information about the gridengine-users mailing list