We have discovered the following inconsistency, on slurm 15.08.8:

If a job script specifies:

---- snip ----
#!/bin/bash
#SBATCH --account=staff
#SBATCH --time=0:10:0
#SBATCH -J
#SBATCH --mem-per-cpu=500M
#SBATCH --output=out/empty-jobname-%j.out
---- snip ----

sbatch does not report an error about the missing argument to '-J', but
silently stops parsing the #SBATCH lines:

$ sbatch empty-jobname.sm
sbatch: error: --mem-per-cpu specification required, but not provided
sbatch: error: Batch job submission failed: Memory required by task is not 
available
$ 

(The --mem-per-cpu error here is from our test in job_submit.lua.)

However, if the '-J' line is the last line, the error is reported:

---- snip ----
#!/bin/bash
#SBATCH --account=staff
#SBATCH --time=0:10:0
#SBATCH --mem-per-cpu=500M
#SBATCH --output=out/empty-jobname-%j.out
#SBATCH -J
---- snip ----

$ sbatch empty-jobname.sm
sbatch: option requires an argument -- 'J'
Submitted batch job 14221261
$ 

A more consistent behaviour would have been nice.  My suggestion is:
report error and fail to submit the job.

-- 
Regards,
Bjørn-Helge Mevik, dr. scient,
Department for Research Computing, University of Oslo

Reply via email to