Bug 11 - qsub -k option works in reverse of documented behavior
: qsub -k option works in reverse of documented behavior
Product: TORQUE
: 2.3.x
: PC Linux
: P5 minor
Assigned To: Glen
  Show dependency treegraph
Reported: 2009-07-09 08:28 MDT by Troy Baer
Modified: 2009-10-15 22:00 MDT (History)
0 users (show)

See Also:



You need to log in before you can comment on or make changes to this bug.

Description Troy Baer 2009-07-09 08:28:54 MDT
One of our user support folks reported the following:
Based on the 'qsub' manpage, I am led to believe that:

"#PBS -k e" should keep stderr, discard stdout
"#PBS -k o" should keep stdout, discard stderr

I find that the opposite is true: I must use '-k o' to get error messages.

Is this a known issue with PBS? I haven't noticed anyone using it, but
for debugging purposes, I think this could be a good alternative to for
those that use "#PBS -j n".

-------------- example ----------------------
ksharkey@krakenpf5(XT5):~/scratch> cat test.pbs
#PBS -l walltime=00:00:01,size=8
#PBS -N qsubOptions
#PBS -k o

echo hi
sleep 100
ksharkey@krakenpf5(XT5):~/scratch> qsub test.pbs
ksharkey@krakenpf5(XT5):~/scratch> cat qsubOptions.e174148
=>> PBS: job killed: walltime 20 exceeded limit 1
ksharkey@krakenpf5(XT5):~/scratch> cat qsubOptions.o174148
cat: qsubOptions.o174148: No such file or directory

I've been able to reproduce this on TORQUE 2.1.11, 2.3.5, and 2.4.1b1.
Comment 1 Glen 2009-08-28 18:53:56 MDT
in your example, the file should be in the user ksharkey's home directory, but
you are running cat in ~/scratch. What #PBS -k o tells torque to do is to copy
the stdout file into the user's home directory on the execution host rather
than copying it to the submit directory back on the submit host (that is, k -o
means "_keep_ the stdout file on the execution host, do not copy back to the
submit host").  With NFS mounted home directories #PBS -k o would have no
effect if one were to submit a job directly from their home directory and use
the default name for the stdout file. Since you did not specify a -k option for
the stderr file, it was staged back to the submit directory as usual.

This is my interpretation of the man page anyway
Comment 2 Simon Toth 2009-09-25 06:57:21 MDT
Yes, this is how it should work. -k means keep on the exec host, it does not
discard the files, just doesn't transmit them back to you.

Should be closed as INVALID.