So the Path variables are being set correctly, but still the .o and .e files end in $HOME. Is that because the jobdir is being set to $HOME instead of submission directory?
ā-koeā is only used to retain the jobās error and output files at the end of the job on the execution host. In your case it is retaining it on the userās shared home directory. Hereās a small clip from the man page:
-k keep Specifies whether and which of the standard output and standard error streams is retained
on the execution host. Overrides default path names for these streams. Sets the jobās
Keep_Files attribute to keep. Default: neither is retained. Overrides -o and -e options.
unfortunately, I dont see these files being created on the head node as the job is being run. However, I can see that the .OU and .ER files being created in /var/spool/pbs/spool/ of the slave exec node.
So is there any way to see these STDOUT files being outputted on the submission host directory?
Thanks for your post @trumee. We will be working with the OHPC folks to include the latest version of PBS once it is released. As @nithinj pointed out, you will be able to use the direct write feature to accomplish your goal. I canāt give you an exact date, but I suspect the latest PBS release should be available to OHPC users in the first half of 2018. The sooner the better, IMHO.
I am facing same error with version 20.0.1. Submitting the following script results no stdout file in job submitting directory. However when -koe is used stdout file can be found in my home folder.
On another cluster running pbs version 17, stdout was generated as expected.
Is this a bug with version 20.0.1?
FWIW, I use the following script (āqstdoeā) to get stderr/out at any time while the job is running:
#!/bin/sh
usage()
{
echo "$0 <-e|-o> <job_id>"
}
if test $# -ne 2
then
usage
exit 1
fi
case $1 in
"-e") stderr="yes";;
"-o") stderr="no";;
*) usage; exit 1;;
esac
jobid=`echo $2 | cut -d. -f1`
exec_host=`qstat -f $jobid | sed -n 's/exec_host = \(.*\)\/.*/\1/p'`
if test "x$exec_host" = "x"
then
exit 1
fi
if test $stderr = "yes"
then
ext=ER
else
ext=OU
fi
ssh $exec_host cat /var/spool/pbs/spool/${jobid}.*.${ext}